public function getExpCode() { $appId = input( 'app_id', '' ); if ( empty( $appId ) ) { $this->error( appid不能为空 ); return; } $accessToken = $this->getAccessToken( $appId ); if ( empty( $accessToken ) ) { $this->error( '获取授权accessToken错误' ); return; } $params = array( 'access_token' => $accessToken ); $result = $this->buildRequestForm( $params, 'GET', 'https://api.weixin.qq.com/wxa/get_qrcode?access_token='.$accessToken, true ); echo $result; exit; }
如果授权用户没有体验权限则扫码之后不能进行小程序功能体验,这个时候就需要你通过微信接口将用户设置为体验者了,这一步可以在小程序平台用户管理里边操作,为了提高逼格,你可可以通过微 信接口进行体验者的添加和删除,添加的时候需要被添加者微信确认
代码如下
public function bindTester() { $appId = input( 'app_id', '' ); $wxNumber = input( 'wx_number', '' ); if ( empty( $appId ) ) { $this->error( appid不能为空 ); return; } if ( empty( $wxNumber ) ) { $this->error( 微信号不能为空 ); return; } $accessToken = $this->getAccessToken( $appId ); if ( empty( $accessToken ) ) { $this->error( '获取授权accessToken错误' ); return; } $params = array( 'wechatid' => $wxNumber ); $result = $this->curl_post( 'https://api.weixin.qq.com/wxa/bind_tester?access_token='.$accessToken, json_encode( $params ) ); print_r($result); exit; return; } public function unBindTester() { $appId = input( 'app_id', '' ); $wxNumber = input( 'wx_number', '' ); if ( empty( $appId ) ) { $this->error( appid不能为空 ); return; } if ( empty( $wxNumber ) ) { $this->error( 微信号不能为空 ); return; } $accessToken = $this->getAccessToken( $appId ); if ( empty( $accessToken ) ) { $this->error( '获取授权accessToken错误' ); return; } $params = array( 'wechatid' => $wxNumber ); $result = $this->curl_post( 'https://api.weixin.qq.com/wxa/unbind_tester?access_token='.$accessToken, json_encode( $params ) ); print_r($result); exit; return; }
如果体验功能有问题则重新调整小程序代码逻辑然后上传之后设置为模板,如果没有问题则将小程序代码提交审核,但是提交审核的时候需要指定category,所以需要调用微信接口查看
如果授权用户没有设置的话,需要对方进入小程序平台,在填写小程序信息的地方添加服务条目
代码如下
public function getCategory() { $appId = input( 'app_id', '' ); if ( empty( $appId ) ) { $this->error( appid不能为空 ); return; } $accessToken = $this->getAccessToken( $appId ); if ( empty( $accessToken ) ) { $this->error( '获取授权accessToken错误' ); return; } $params = array( 'access_token' => $accessToken ); $result = $this->buildRequestForm( $params, 'GET', 'https://api.weixin.qq.com/wxa/get_category?access_token='.$accessToken, true ); echo $result; exit; }
拿到服务条目之后就是提交代码审核了
代码如下
public function submitAudit() { $appId = input( 'app_id', '' ); if ( empty( $appId ) ) { $this->error( appid不能为空 ); return; } $accessToken = $this->getAccessToken( $appId ); if ( empty( $accessToken ) ) { $this->error( '获取授权accessToken错误' ); return; } $params = array( 'item_list' => array( array( 'address' => 'pages/index/index', 'tag' => 'IT科技', 'first_class' => 'IT科技', 'second_class' => '硬件与设备', 'title' => '生成二维码' ), array( 'address' => 'pages/media/media', 'tag' => '工具', 'first_class' => '工具', 'second_class' => '办公', 'title' => '多媒体上传' ) ) ); $result = $this->curl_post( 'https://api.weixin.qq.com/wxa/submit_audit?access_token='.$accessToken, json_encode( $params, JSON_UNESCAPED_UNICODE ) ); echo'<pre>'; print_r($result); exit; $this->success( '操作成功' ); return; }
提交审核之后,微信服务器会返回一个审核id,你可以通过该审核id查询审核状态
当审核通过之后,微信会给你第三方注册的回调地址推送一个审核结果
代码如下
public function getAuditStatus (){ $appId = input( 'app_id', '' ); if ( empty( $appId ) ) { $this->error( appid不能为空 ); return; } $accessToken = $this->getAccessToken( $appId ); if ( empty( $accessToken ) ) { $this->error( '获取授权accessToken错误' ); return; } $params = array( 'auditid' => 12334 ); $result = $this->curl_post( 'https://api.weixin.qq.com/wxa/get_auditstatus?access_token='.$accessToken, json_encode( $params ) ); print_r($result); exit; return; }
当小程序审核通过了接下来就是小程序发布了
代码如下