yii-diandi / yii2-soap-server
SOAP Server Extension for Yii 2
Installs: 7
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Type:yii2-extension
Requires
- php: >=5.4.0
- ext-soap: *
- php2wsdl/php2wsdl: *
- yiisoft/yii2: *
Requires (Dev)
This package is auto-updated.
Last update: 2024-10-22 11:28:37 UTC
README
Note, PHP SOAP extension is required.
Installation
The preferred way to install this extension is through composer.
Either run
composer require --prefer-dist yii-diandi/yii2-soap-server "*"
or add
"yii-diandi/yii2-soap-server": "*"
to the require
section of your composer.json
file.
Usage
You need to add [[diandi\soapserver\Action]] to web controller.
Note, In a service class, a remote invokable method must be a public method with a doc comment block containing the '@soap' tag.
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; } }
In case you want to disable the WSDL mode of SoapServer, you can specify this in the serviceOptions
parameter as indicated below. You can use this when the request is to complex for the WSDL generator.
/** * @inheritdoc */ public function actions() { return [ 'index' => [ 'class' => 'diandi\soapserver\Action', 'serviceOptions' => [ 'disableWsdlMode' => true ] ] ]; }