苏州做i网站的,杭州专业网站营销,北京网站制作17页,宏杰zkeys网站模板fastadmin 封装框架
实现功能#xff1a;AXN隐私号绑定、解绑#xff1b;
场景#xff1a;为店铺手机号开通虚拟号#xff0c;用户联系店铺展示虚拟号码#xff1b;
官方开放文档地址#xff1a;https://help.aliyun.com/document_detail/59655.html?spma2c4g.111742…fastadmin 封装框架
实现功能AXN隐私号绑定、解绑
场景为店铺手机号开通虚拟号用户联系店铺展示虚拟号码
官方开放文档地址https://help.aliyun.com/document_detail/59655.html?spma2c4g.11174283.6.661.b8365d50CKM5Ma
效果如下: 参考官网开放文档下载SDK解压得到 aliyun-dypls-php-sdk 文件夹
将解压的文件夹内的 api_sdk 文件夹与 api_demo 文件夹内的 PlsDemo.php拷贝到项目 vendor 目录下笔者这里是放在了yinsi文件夹 随后打开 PlsDemo.php文件修改 getAcsClient 方法内对应的 AccessKeyId、AccessKeySecret 还是PlsDemo.php文件修改绑定时的号码池 还是PlsDemo.php文件修改解绑时的号码池 最后在用户列表控制器内添加以下代码 /*** 编辑*/public function edit($ids null){$row $this-model-get($ids);if (!$row) {$this-error(__(No Results were found));}$adminIds $this-getDataLimitAdminIds();if (is_array($adminIds)) {if (!in_array($row[$this-dataLimitField], $adminIds)) {$this-error(__(You have no permission));}}if ($this-request-isPost()) {$params $this-request-post(row/a);if ($params) {
// print_r($params);exit;//开通虚拟号if ($params[privacydata] 2){vendor(yinsi.PlsDemo);$response \PlsDemo::bindAxn($params[mobile]) ;if ($response-Code OK){$params[privacy_tel] $response-SecretBindDTO-SecretNo;$params[subsid] $response-SecretBindDTO-SubsId;}else{$this-error($response-Message);}}else{vendor(yinsi.PlsDemo);$response \PlsDemo::unbindSubscription($params[subsid],$params[privacy_tel]) ;if ($response-Code OK){$params[privacy_tel] ;$params[subsid] ;}};$params $this-preExcludeFields($params);$result false;Db::startTrans();try {//是否采用模型验证if ($this-modelValidate) {$name str_replace(\\model\\, \\validate\\, get_class($this-model));$validate is_bool($this-modelValidate) ? ($this-modelSceneValidate ? $name . .edit : $name) : $this-modelValidate;$row-validateFailException(true)-validate($validate);}$result $row-allowField(true)-save($params);Db::commit();} catch (ValidateException $e) {Db::rollback();$this-error($e-getMessage());} catch (PDOException $e) {Db::rollback();$this-error($e-getMessage());} catch (Exception $e) {Db::rollback();$this-error($e-getMessage());}if ($result ! false) {$this-success();} else {$this-error(__(No rows were updated));}}$this-error(__(Parameter %s can not be empty, ));}$this-view-assign(row, $row);return $this-view-fetch();}
与原始的修改方法区别如下接口描述 不需要后台管理的笔友用以下代码
简单的通过接口绑定、解绑虚拟号。
//隐私号码绑定public function yinsi(){$type $this-request-request(type);//1绑定2解绑$mobile $this-request-request(mobile);//需要绑定的手机号vendor(yinsi.PlsDemo);$response \PlsDemo::bindAxn($mobile) ;print_r($response);exit;//打印接口返回参数}//隐私号码解绑public function Unbundling(){$subsid $this-request-request(subsid);//绑定接口中返回的subsId;$secretNo $this-request-request(secretNo);//绑定接口中返回的secretNo;vendor(yinsi.PlsDemo);$response \PlsDemo::unbindSubscription($subsid,$secretNo) ;print_r($response);exit;//打印接口返回参数}