yii-diandi/yii2-soap-server

Yii 2 SOAP 服务器扩展

dev-master 2020-07-22 02:08 UTC

This package is auto-updated.

Last update: 2024-09-22 11:24:32 UTC


README

注意,需要PHP SOAP 扩展。

Latest Stable Version Total Downloads Build Status

安装

安装此扩展的首选方式是通过 Composer

可以运行

composer require --prefer-dist yii-diandi/yii2-soap-server "*"

或者添加

"yii-diandi/yii2-soap-server": "*"

到您的 composer.json 文件的 require 部分。

使用方法

您需要将 [[diandi\soapserver\Action]] 添加到 web 控制器。

注意,在服务类中,远程可调用的方法必须是一个公共方法,并且包含包含 '@soap' 标签的文档注释块。

class ApiController extends Controller
{
    /**
     * @inheritdoc
     */
    public function actions()
    {
        return [
            'hello' => 'diandi\soapserver\Action',
        ];
    }

    /**
     * @param string $name
     * @return string
     * @soap
     */
    public function getHello($name)
    {
        return 'Hello ' . $name;
    }
}

如果您想禁用 SoapServer 的 WSDL 模式,可以在 serviceOptions 参数中指定,如下所示。当请求对于 WSDL 生成器过于复杂时,可以使用此功能。

    /**
     * @inheritdoc
     */
    public function actions() {
        return [
            'index' => [
                'class' => 'diandi\soapserver\Action',
                'serviceOptions' => [
                    'disableWsdlMode' => true
                ]
            ]
        ];
    }