资讯专栏INFORMATION COLUMN

解决微信OAuth2.0网页授权回调域名只能设置一个的问题

Richard_Gao / 1786人阅读

摘要:部署至你的微信授权回调域名的目录下例如在其他页面的使用方式如下,类似于直接通过微信回调的方式,只是将请求地址改成了的地址,另外省去了参数因为它只能为以及的它们会在里面去加上页面从微信那里拿到之后会重新跳转回调用的页面

1、部署get-weixin-code.html至你的微信授权回调域名的目录下
例如http://wx.abc.com/get-weixin-...

2、在其他页面的使用方式如下,类似于直接通过微信回调的方式,只是将请求地址改成了get-weixin-code.html的地址,另外省 去了response_type参数(因为它只能为code)以及#wechat_redirect的hash
它们会在get-weixin-code.html里面去加上location.href = "http://wx.abc.com/get-weixin-..." + encodeURIComponent(location.href);

3、get-weixin-code.html页面从微信那里拿到code之后会重新跳转回调用的页面,并且在url后面带上code

附上在CI框架中实现代码示例:

public function GetOpenid()
{
    if (!isset($_GET["code"]))
    {
        //触发微信返回code码
     
        $redirect_uri = urlencode(site_url("wap/login/GetOpenid"));
     
        $url = site_url("wap/common/get_weixin_code")."?appid=".APPID."&scope=snsapi_userinfo&state=STATE&redirect_uri=".$redirect_uri;
     
        //请求公共的地址
     
        redirect($url);
     
        exit();
     
    } else {
     
        //获取code码,以获取openid
     
        $code = $_GET["code"];
     
        $url = "https://api.weixin.qq.com/sns/oauth2/access_token?appid=".APPID."&secret=".APPSECRET."&code={$code}&grant_type=authorization_code";
     
        $result = weixinCurl($url); //curl请求微信获取access_token接口
     
        print_r($result);
     
    }
}

公共统一代码如下:get_weixin_code.php




    
    微信登陆





文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/21876.html

相关文章

  • 微信网页授权+分享踩过

    摘要:页面用浏览器自带返回和安卓物理返回死循环的话,直接看高潮部分背景折磨我两个工作日加周末一天的问题,我觉得还是有必要记录一下,为什么程序员总是加班,就是遇到这些意想不到的问题需求领导我想做两个页面,放在微信里面可以访问我简单啊,用实现产品设计 页面用浏览器自带返回和安卓物理返回死循环的话,直接看高潮部分 背景 折磨我两个工作日加周末一天的问题,我觉得还是有必要记录一下,为什么程序员总是加...

    mtunique 评论0 收藏0
  • 微信网页授权+分享踩过

    摘要:页面用浏览器自带返回和安卓物理返回死循环的话,直接看高潮部分背景折磨我两个工作日加周末一天的问题,我觉得还是有必要记录一下,为什么程序员总是加班,就是遇到这些意想不到的问题需求领导我想做两个页面,放在微信里面可以访问我简单啊,用实现产品设计 页面用浏览器自带返回和安卓物理返回死循环的话,直接看高潮部分 背景 折磨我两个工作日加周末一天的问题,我觉得还是有必要记录一下,为什么程序员总是加...

    Tecode 评论0 收藏0
  • 说说微信扫码登录

    摘要:详情接口我们这里主要讲的是网站应用,网站应用微信登录是基于协议标准构建的微信授权登录系统即上面的协议。在微信客户端授权登录获取用户信息的可以查看。微信授权登录目前支持模式,适用于拥有端的应用授权。 一、OAuth2.0 OAuth(开放授权)是一个开放标准,允许用户让第三方应用访问该用户在某一网站上存储的私密的资源(如照片,视频,联系人列表),而无需将用户名和密码提供给第三方应用。 ...

    Jokcy 评论0 收藏0
  • 微信授权和sdk加密算法

    摘要:准备工作申请服务器公众号基本配置这些微信公众平台上都有,就不介绍了,接下来进入正题。随着微信管控越发严厉,像一些最基本的网页转发都需要授权处理才能获取到图片和描述,描述审查也是相当严格。 准备工作: 申请服务器 公众号 基本配置 这些微信公众平台上都有,就不介绍了,接下来进入正题。 ➣ 微信网页授权 node js-sdk 授权公众平台的技术文档目的为了简明扼要的交代接口的使用,语句难...

    gaara 评论0 收藏0
  • 注册微信开发测试号

    摘要:注册测试号注册的地址在这里要进行微信公众号的开发,那就需要一个本地的开发环境来进行开发。而微信测试号就正好提供了这样的一个环境。通俗一点理解微信要知道访问它资源是不是这个当前测试号。 注册测试号 注册的地址在 这里 要进行微信公众号的开发,那就需要一个本地的开发环境来进行开发。而微信测试号就正好提供了这样的一个development环境。每个微信号只能对应一个测试号,但是每个测试号可以...

    channg 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<