微信公众号登录授权,授权后重定向的回调链接地址,无法去接收授权回调通知的redirect_uri?
发布于 7 年前 作者 yangqian 1735 次浏览 来自 官方Issues

当登录失效,则去调用微信公众号的授权地址,

然而在授权的过程中并没有跳转回调redirect_uri,

将会一直停留在log.info(“user is login timeout…”) 这行是在日志记录查看到的,

授权地址即没有报错,也没有跳转,并且有时可以,有时不可以,但通过刷新途径,即可跳转回调redirect_uri,并且能成功的接收到重定向的回调链接地址

public class Interceptor implements HandlerInterceptor {
	//微信网页鉴权地址
	public static String oauth2url = "https://open.weixin.qq.com/connect/oauth2/authorize?
			appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=SCOPE&state=STATE&connect_redirect=1#wechat_redirect";
	//校验登录
	String code = checkLogin(memberId, tokenId, request);
	//检查是否登录
	if(!code.equals(ErrorCode.SUCCESS)){
		//没有登录,去微信网页鉴权
		log.info("user is login timeout......");  一直停留在这,不会报错
		// 回调地址
		String backurl = PropertyUtil.getProperty("weixin.oauth2backurl");
		//log.info("backurl is {}" , backurl);
		//最终地址
		String url = oauth2url.replace("APPID", TokenThread.appid).
					          replace("REDIRECT_URI",CommonUtil.urlEncodeUTF8(backurl)).
					          replace("SCOPE", "snsapi_userinfo");
		//重定向
		response.sendRedirect(encodeUrl);
[@RequestMapping](/user/RequestMapping)(value="/oauth2", method={RequestMethod.GET})
publicvoid oauth2(HttpServletRequest request, HttpServletResponse response)throws IOException, ServletException {
	loginfo("微信网页授权回调通知......");
}
1 回复

你好,请问现在问题解决了么?未解决的话,提供下appid,说明下复现流程,复现时麻烦在手机微信那里上传下日志: 我->设置->帮助与反馈右上角有个上报日志的入口,麻烦提供一下微信号,时间点

回到顶部