Aliyun SDK für yii2. Wenn es mit DI implementiert wird, kann es von sich selbst vererbt und erweitert werden.
Unterstützte Schnittstellen und Dienste:
In den nächsten Schritten führen Sie den Installationsvorgang mit Composer. Die Installation ist ein schneller und einfacher dreistufiger Vorgang.
Entweder rennen
composer require --prefer-dist xutl/yii2-aliyun
oder hinzufügen
"xutl/yii2-aliyun" : " ~2.0.0 " zum require -Abschnitt Ihres Composers.json.
Fügen Sie Ihrer Hauptkonfigurationsdatei folgende Zeilen hinzu:
' components ' => [
' aliyun ' => [
' class ' => ' xutlaliyunAliyun ' , //这个类其实就是 继承了 `yiidiServiceLocator` 类。
' accessId ' => ' 123456 ' ,
' accessKey ' => ' 654321 ' ,
' params ' => [ //这里是非扩展的配置参数,如队列任务等
' CloudPush.appKey ' => 123456789
],
' components ' => [
//各子组件配置,如果无需配置不写即可。也可动态注入配置。
//如果子组件使用独立的 `accessId` 和 `accessKey` 那么在子组件中单独配置即可,如果没有配置默认使用父 `accessId` 和 `accessKey` 。
//如果你自己扩展了其他的子组件,这里定义下新的组件配置即可,配置方式,数组接口和 YII 原生组件一致!
//etc
]
],
],Die Verwendung ist sehr einfach
$ aliyun = Yii:: $ app -> aliyun ;
$ cloudPush = $ aliyun -> getCloudPush ();
// 查看文档 https://help.aliyun.com/knowledge_detail/48085.html 请求参数中的 `Action` 省略,其他的照着写上就发包了。
// 实现原理是 首先 Aliyun 类使用 DI 技术 将子组件注册进来,在第一次使用时,会自动初始化,接着使用PHP的魔术方法请求对应的接口,方法名称即 `Action` 参数首字母小写即可。
$ res = $ cloud -> pushMessageToAndroid ([
' AppKey ' => ' 123456 ' ,
' Target ' => ' ALL ' ,
' TargetValue ' => ' ALL ' ,
' Title ' => ' Hello ' ,
' Body ' => ' Hello World! ' ,
]);
var_dump ( $ res -> isOk );
print_r ( $ res -> data );
//或者使用队列处理
Yii:: $ app -> queue -> push ( new xutl aliyun jobs PushNoticeToMobile ([
//etc
]));
//其他接口类似调用方式
//如果扩展 暂不支持的接口,直接继承 `xutlaliyunBaseClient` 和 `xutlaliyunBaseAcsClient` 基类即可自带 认证。你只需扩展方法即可。
// 然后使用YII 自带的组件机制,参见上面的安装配置,把你自定义的接口注入进来即可。 Wenn Sie an dieser Schnittstelle interessiert sind, können Sie eine PR direkt einreichen, um zusammenzuarbeiten und zu aktualisieren. Arbeitszeiten an Arbeitstagen können im Grunde reagieren und in Echtzeit verschmelzen.
Dies wird unter der MIT -Lizenz veröffentlicht. Weitere Informationen finden Sie in der gebündelten Lizenz.md.