查看: 93|回覆: 1

[公众号] 微信公众号开发流程--微信第三方授权登陆流程

[複製鏈接]

5

主題

0

回帖

0

積分

热心网友

金币
0
閲讀權限
220
精華
0
威望
0
贡献
0
在線時間
0 小時
註冊時間
2008-7-15
發表於 2020-8-5 12:23:00 | 顯示全部樓層 |閲讀模式

登陆微信公众号平台

https://mp.weixin.qq.com/cgi-bin/loginpage?url=%2Fcgi-bin%2Fframe%3Ft%3Dadvanced%2Fdev_tools_frame%26nav%3D10049%26token%3D396413138%26lang%3Dzh_CN

左边导航->开发->基本配置

1.IP白名单:把自己的服务器的ip地址加入白名单

在自己的服务器上的新建index.php,
确保下面图片中url地址能访问通它用

<?php
    $signature = $_GET["signature"];
    $timestamp = $_GET["timestamp"];
    $nonce = $_GET["nonce"];
	
    $token = "wxe43ec29ebd12cf21";
    $tmpArr = array($token, $timestamp, $nonce);
    sort($tmpArr, SORT_STRING);
    $tmpStr = implode( $tmpArr );
    $tmpStr = sha1( $tmpStr );
    
    if( $tmpStr == $signature ){
      echo $_GET["echostr"];
      exit;
      // return true;
    }else{
      echo false;
      exit;
    }

go的方式:
参考下面的地址:
https://blog.csdn.net/junmoxi/article/details/85411288

2.启用服务器配置

3.接口权限->网页服务->网页授权->功能设置->页面授权域名

把自己的域名添加入 JS接口安全域名页面授权域名里

左边导航开发->开发者工具

在web开发者工具->绑定开发者微信号 把开发者的微信号加入开发组

官网参考手册:
https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/Wechat_webpage_authorization.html

目录

1 第一步:用户同意授权,获取code

2 第二步:通过code换取网页授权access_token

3 第三步:刷新access_token(如果需要)

4 第四步:拉取用户信息(需scope为 snsapi_userinfo)

5 附:检验授权凭证(access_token)是否有效

回覆

使用道具 舉報

0

主題

2091

回帖

1萬

積分

琼殿精英

金币
10576
閲讀權限
220
精華
0
威望
0
贡献
0
在線時間
0 小時
註冊時間
2011-10-11
發表於 6 天前 | 顯示全部樓層
看到楼主分享的微信公众号开发流程,整理得很清晰呢!补充几点小经验希望对大家有帮助:

1. 关于Token验证:楼主的PHP代码写得没问题,不过生产环境建议把Token放到配置文件里,不要硬编码哦。另外建议加上日志记录,方便排查问题。

2. IP白名单:这里提醒一下,每次修改服务器后记得更新白名单,不然接口调用会失败。之前有朋友忘记更新IP白名单,调了半天才发现是这个问题。

3. 网页授权域名:只能填写一个域名,而且要注意不带http://。如果需要多个域名,可以考虑用子域名的方式。

4. 关于scope参数:如果只是获取用户openid,用snsapi_base就可以,不需要用户授权。如果需要获取用户详细信息,才需要用snsapi_userinfo。

5. access_token和网页授权access_token是两回事,别搞混了。普通接口用的是access_token,网页授权用的是网页授权access_token。

6. 建议用EasyWeChat或者WeChat SDK这些现成的框架,可以省很多功夫:https://www.easywechat.com/

希望这些补充对大家有帮助,有问题欢迎在下面一起讨论!

---
来自圆梦公社社区:https://bbs.ym.gs/
回覆

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 立即注册

本版積分規則

圆梦公社,专注于为全球华人提供纯粹技术交流的地方,请勿发布任何政治及违法的言论。如有相关侵权、举报、投诉及建议等,请发 E-mail:dzh188@hotmail.com

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部