微信 Token配置 与微信网页授权操作
2018-03-24 14:50
519 查看
微信开发准备工作
1、申请公众号测试账号地址,先注册账号http://mp.weixin.qq.com/debug/cgi-bin/sandboxinfo?action=showinfo&t=sandbox/index
2、更改接口信息配置的Token与URL地址
注:该URL是直接指向到具体能访问到的地址。
3、设置JS安全域名与设置网页授权回调地址
功能列表 – 网页服务
4、开始接入微信验证Token
<?php namespace Test; class TestController extends Controller { public function tokenSignature() { $timestamp = $_GET['timestamp']; $nonce = $_GET['noonce']; $token = 'sxs-hd'; //该处的值应该和第二条的TOKEN值一样 $signature = $_GET['signature']; $array = array($timestamp, $nonce, $token); sort($array); //排序之后的数据拼接好使用sha1加密 $tmpstr = implode('', $array); $tmpstr = sha1($tmpstr); //将加密后的字符串与singature进行对比,判 4000 断是否来自微信请求 if ($tmpstr == $signature) { exit($_GET['echostr']); } } }
5、获取自身的access_token值
<?php public function get_access_token() { $url = 'https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid='. self::APP_ID .'&secret=' . self::APP_SECRET; $token = file_get_contents($url); var_dump($token); //正常返回 { "access_token":"ACCESS_TOKEN", "expires_in":7200 } //失败返回 { "errcode":40013, "errmsg":"invalid appid" } }
6、获取用户网页身份授权
- 第一步:用户同意授权,获取code值
<?php $params = http_build_query([ 'appid' => '你的APPID', 'redirect_uri => urlencode('https://mm.shaxiaoseng.com/Test/code'), //获取之后回调地址 'response_type' => 'code', 'scope' => 'snsapi_base', 'state' => 123 ]); $url = 'https://open.weixin.qq.com/connect/oauth2/authorize?' . $params . '#wechat_redirect'; #把上面的url在微信客户端打开就能看到返回的code值
第二步:通过code换取网页授权access_token
//根据第一步获取到的code并回调到本方法 public function code() { #根据拿到的code值去访问用户的access_token令牌 $params = http_build_query([ 'appid' => 'APPID', 'secret' => 'APP_SECERT', 'code' => $_GET['code'], 'grant_type' => 'authorization_code' ]); $url = 'https://api.weixin.qq.com/sns/oauth2/access_token?' . $params; $result = file_get_contents($url); var_dump($result); //正确返回 { "access_token":"ACCESS_TOKEN", "expires_in":7200, "refresh_token":"REFRESH_TOKEN", "openid":"OPENID", "scope":"SCOPE" } }
第三步:刷新access_token令牌
第四步:拉取用户信息
第五步:检验授权凭证(access_token)是否有效
其它的开发可以直接查看微信官方手册 [手册地址]
https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140842
相关文章推荐
- 微信的全局接口使用凭证access_token和网页授权临时access_token
- 微信开发中网页授权access_token与基础支持的access_token异同
- 微信网页中获取用户基本信息(网页授权操作)
- 微信开发中网页授权access_token与基础支持的access_token异同
- 微信网页授权操作逻辑封装-C#实例
- 微信开发——网页授权access_token与全局access_token获取用户信息的接口
- 微信的全局接口使用凭证access_token和网页授权临时access_token
- C#实现的微信网页授权操作逻辑封装示例
- 微信 网页授权 本地开发配置
- 微信开发中网页授权access_token与基础支持的access_token异同
- 微信开发中网页授权access_token与基础支持的access_token异同
- 微信网页授权access_token和普通access_token区别
- 微信开发中网页授权access_token与基础支持的access_token异同 问题1:网页授权access_token与分享的jssdk中的access_token一样吗? 答:不一样。网页授
- 微信开发中网页授权access_token与基础支持的access_token异同
- 微信公共平台接入之:网页授权(微信授权,微信access_token获取,获取微信用户信息),微信开发者工具使用,微信公众平台测试号申请接入
- 微信网页授权操作逻辑封装-C#实例
- 微信开发中网页授权access_token与基础支持的access_token异同
- 【微信公众号】微信关于网页授权access_token和普通access_token的区别及两种不同方式授权
- 微信开发中网页授权access_token与基础支持的access_token异同
- nodejs微信开发--网页获取用户授权信息