yii-diandi / yii2-soap-server
Yii 2 SOAP 服务器扩展
dev-master
2020-07-22 02:08 UTC
Requires
- php: >=5.4.0
- ext-soap: *
- php2wsdl/php2wsdl: *
- yiisoft/yii2: *
Requires (Dev)
This package is auto-updated.
Last update: 2024-09-22 11:24:32 UTC
README
注意,需要PHP SOAP 扩展。
安装
安装此扩展的首选方式是通过 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 ] ] ]; }