热门标签 | HotTags
当前位置:  开发笔记 > 前端 > 正文

公众号网页授权后获取用户基本信息出现access_token非法提示

首先我确定我的公众号是认证的服务号,而且已经设置了与当前访问的域名一样的公众号授权域名,而且授权的方式是出现提示框的那种(即可获取用户信息的)而非静默授权。我的开发流程:1、调用接口open.weix...
首先我确定我的公众号是认证的服务号,而且已经设置了与当前访问的域名一样的公众号授权域名,而且授权的方式是出现提示框的那种(即可获取用户信息的)而非静默授权。
我的开发流程:
1、调用接口http://open.weixin.qq.com/connect/oauth2/authorize?appid=公众号APPID&redirect_uri=我的地址&response_type=code&scope=snsapi_userinfo&state=1#wechat_redirect ,并成功获取code。
2、利用code获取access_token,调用https://api.weixin.qq.com/sns/oauth2/access_token?appid=公众号APPID&secret=公众号APPSECRET&code=CODE&grant_type=authorization_code,并成功获取access_token,refresh_token,openid等数据
3、利用上面获得的access_token获取用户https://api.weixin.qq.com/cgi-bin/user/info?access_token=上面获取的access_token&openid=上面获取的openid&lang=zh_CN,但这里获取到的信息是错误的信息,errcode是40001,errmsg:invalid credential,access_token is invalid or not latest hint:[25XmA020.....]。

步骤看上去像是正确的,为什么通过授权的access_token都不能获取到用户信息?我可是一获取到access_token马上用来获取用户信息的,应该不会是access_token超时的原因啊。哪位大神知道是什么问题?

回复内容:

首先我确定我的公众号是认证的服务号,而且已经设置了与当前访问的域名一样的公众号授权域名,而且授权的方式是出现提示框的那种(即可获取用户信息的)而非静默授权。
我的开发流程:
1、调用接口http://open.weixin.qq.com/connect/oauth2/authorize?appid=公众号APPID&redirect_uri=我的地址&response_type=code&scope=snsapi_userinfo&state=1#wechat_redirect ,并成功获取code。
2、利用code获取access_token,调用https://api.weixin.qq.com/sns/oauth2/access_token?appid=公众号APPID&secret=公众号APPSECRET&code=CODE&grant_type=authorization_code,并成功获取access_token,refresh_token,openid等数据
3、利用上面获得的access_token获取用户https://api.weixin.qq.com/cgi-bin/user/info?access_token=上面获取的access_token&openid=上面获取的openid&lang=zh_CN,但这里获取到的信息是错误的信息,errcode是40001,errmsg:invalid credential,access_token is invalid or not latest hint:[25XmA020.....]。

步骤看上去像是正确的,为什么通过授权的access_token都不能获取到用户信息?我可是一获取到access_token马上用来获取用户信息的,应该不会是access_token超时的原因啊。哪位大神知道是什么问题?

获取用户信息的接口需要进行微信认证

你报的这个错误应该是access_token失效导致的,是不是用什么缓存来保存access_token了,那样的话,建议先清空下缓存再试试。http://www.weixin.com

我再强调一遍,网页授权获取用户信息的接口是

http://mp.weixin.qq.com/wiki/17/c0f37d5704f0b64713d5d2c37b468d75.html

而不是

http://mp.weixin.qq.com/wiki/14/bb5031008f1494a59c6f71fa0f319c66.html

网页授权的 AccessToken 和获取用户信息的 AccessToken 不是一个东西。

也就是你上面的第 3 步的接口地址应是

https://api.weixin.qq.com/sns/userinfo

而不是

https://api.weixin.qq.com/cgi-bin/user/info

参考:https://github.com/thenbsp/wechat

10/6 更新

真不知道踩的人是什么心理,也不知道踩的人有没有仔细查看管方文档,如果觉得我的回答不对,请站指出错误,谢谢!

access_token自己缓存下,你用了一个过时的

明明expiredate是7200秒,但是没到2小时accesstoken就过期了,有什么办法去判断accesstoken过期呢

推荐阅读
  • EPICS Archiver Appliance存储waveform记录的尝试及资源需求分析
    本文介绍了EPICS Archiver Appliance存储waveform记录的尝试过程,并分析了其所需的资源容量。通过解决错误提示和调整内存大小,成功存储了波形数据。然后,讨论了储存环逐束团信号的意义,以及通过记录多圈的束团信号进行参数分析的可能性。波形数据的存储需求巨大,每天需要近250G,一年需要90T。然而,储存环逐束团信号具有重要意义,可以揭示出每个束团的纵向振荡频率和模式。 ... [详细]
  • 目录实现效果:实现环境实现方法一:基本思路主要代码JavaScript代码总结方法二主要代码总结方法三基本思路主要代码JavaScriptHTML总结实 ... [详细]
  • baresip android编译、运行教程1语音通话
    本文介绍了如何在安卓平台上编译和运行baresip android,包括下载相关的sdk和ndk,修改ndk路径和输出目录,以及创建一个c++的安卓工程并将目录考到cpp下。详细步骤可参考给出的链接和文档。 ... [详细]
  • 使用在线工具jsonschema2pojo根据json生成java对象
    本文介绍了使用在线工具jsonschema2pojo根据json生成java对象的方法。通过该工具,用户只需将json字符串复制到输入框中,即可自动将其转换成java对象。该工具还能解析列表式的json数据,并将嵌套在内层的对象也解析出来。本文以请求github的api为例,展示了使用该工具的步骤和效果。 ... [详细]
  • 本文内容为asp.net微信公众平台开发的目录汇总,包括数据库设计、多层架构框架搭建和入口实现、微信消息封装及反射赋值、关注事件、用户记录、回复文本消息、图文消息、服务搭建(接入)、自定义菜单等。同时提供了示例代码和相关的后台管理功能。内容涵盖了多个方面,适合综合运用。 ... [详细]
  • 打开文件管理器_【教程】模组管理器3.1食用指南
    文编:byakko最近有部分小伙伴反应还不会使用unity模组管理器,现在我就给大家讲一下unity模组管理器——从下载到使用。完整视频版以下是无WiF ... [详细]
  • Android中高级面试必知必会,积累总结
    本文介绍了Android中高级面试的必知必会内容,并总结了相关经验。文章指出,如今的Android市场对开发人员的要求更高,需要更专业的人才。同时,文章还给出了针对Android岗位的职责和要求,并提供了简历突出的建议。 ... [详细]
  • 本文介绍了九度OnlineJudge中的1002题目“Grading”的解决方法。该题目要求设计一个公平的评分过程,将每个考题分配给3个独立的专家,如果他们的评分不一致,则需要请一位裁判做出最终决定。文章详细描述了评分规则,并给出了解决该问题的程序。 ... [详细]
  • 禁止程序接收鼠标事件的工具_VNC Viewer for Mac(远程桌面工具)免费版
    VNCViewerforMac是一款运行在Mac平台上的远程桌面工具,vncviewermac版可以帮助您使用Mac的键盘和鼠标来控制远程计算机,操作简 ... [详细]
  • 原文地址:https:www.cnblogs.combaoyipSpringBoot_YML.html1.在springboot中,有两种配置文件,一种 ... [详细]
  • Windows下配置PHP5.6的方法及注意事项
    本文介绍了在Windows系统下配置PHP5.6的步骤及注意事项,包括下载PHP5.6、解压并配置IIS、添加模块映射、测试等。同时提供了一些常见问题的解决方法,如下载缺失的msvcr110.dll文件等。通过本文的指导,读者可以轻松地在Windows系统下配置PHP5.6,并解决一些常见的配置问题。 ... [详细]
  • 【Windows】实现微信双开或多开的方法及步骤详解
    本文介绍了在Windows系统下实现微信双开或多开的方法,通过安装微信电脑版、复制微信程序启动路径、修改文本文件为bat文件等步骤,实现同时登录两个或多个微信的效果。相比于使用虚拟机的方法,本方法更简单易行,适用于任何电脑,并且不会消耗过多系统资源。详细步骤和原理解释请参考本文内容。 ... [详细]
  • 20211101CleverTap参与度和分析工具功能平台学习/实践
    1.应用场景主要用于学习CleverTap的使用,该平台主要用于客户保留与参与平台.为客户提供价值.这里接触到的原因,是目前公司用到该平台的服务~2.学习操作 ... [详细]
  • 如何用UE4制作2D游戏文档——计算篇
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了如何用UE4制作2D游戏文档——计算篇相关的知识,希望对你有一定的参考价值。 ... [详细]
  • 关于我们EMQ是一家全球领先的开源物联网基础设施软件供应商,服务新产业周期的IoT&5G、边缘计算与云计算市场,交付全球领先的开源物联网消息服务器和流处理数据 ... [详细]
author-avatar
黑鸽子
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有