【问题描述】

在先后端完全分离的状况下,当咱们的前端经过Ajax访问某个后台提供的接口地址的时候,浏览器会提示错误(经过查看控制台查看),而且不能看到微信受权后的结果。总而言之就是出现了跨域问题。html

【第一种解决方法】

后台代码不要企图一次性完成全部的受权服务而且直接返回一个包含受权成功后得到的用户信息的Json数据,由于这样作虽而后台容易实现了可是前端却会遇到跨域的问题。前端

解决方法就是分步完成,首先咱们访问前台,前台经过ajax技术访问后台,后台访问微信端数据,特别注意这个时候咱们填写的回调地址是前端的地址也就是一个html地址,而后前台拿到了数据以后再次ajax提交给后台,后台再次处理,与微信端打交道,而后再次……java

总而言之就是把受权这份工做分步骤完成而且这个分步骤是先后端还有微信端都须要参与的。ajax

这种方法须要注意的是先后端事先要约定好回调地址到底是后台的哪一个地址,不可改变。若是改变的话后台的代码或者配置文件也须要改变。后端

【第二种解决方法】

这种方法一样须要一份协议:先后端须要约定好受权成功后返回的前端地址。也就是说,用户直接访问的是后台受权的地址,后台受权过程当中与微信端进行交互的过程前台不参与,受权成功后,后台将会跳转到某一个前端的地址,这个地址必须是事先约定好的,前端在这个地址上书写解析数据类型的代码便可。若是前端的这个地址改变的话,后台一样须要修改java代码或者是配置文件。(注:受权成功后先后端交互有几种方式,能够考虑后台用写url的方式传递数据给前端,也能够考虑写入session域,而后由前台被访问时ajax从后台中拿到session域中的数据)跨域

总而言之就是受权过程当中前端浑然不知,知道用户访问前台的时候前台才会调用相应的js函数进行数据的获取或者解析。浏览器

我我的比较喜欢第二种方式,可是第一种方式也很不错。若是有遇到什么问题欢迎交流。

php返回微信授权信息跨域,微信受权存在的跨域问题以及解决方法相关推荐

  1. 微信授权demo php,PHP微信公众平台oauth2.0网页授权登录类的封装demo

    一.微信授权使用的是OAuth2.0授权的方式.主要有以下简略步骤: 第一步:用户同意授权,获取code 第二步:通过code换取网页授权access_token 第三步:拉取用户信息(需scope为 ...

  2. uniapp - 编译微信小程序项目的微信授权登录、获取微信手机号登录、最新版微信直接登录、手机与验证码登录的示例源码(适用于 uniapp 微信小程序项目,源代码直接开箱即用)超级详细的代码及注释

    效果图 uniapp 项目编译微信小程序,一些常见的登录方式及源代码,示例代码干净整洁无BUG拿来即用. 本文示例实现了 uniapp 微信小程序项目的登录功能,包含微信授权登录.获取微信手机号登录. ...

  3. 华为微信来消息不提示/不显示内容/没声音/不亮屏等解决方法

    华为微信来消息不提示/不显示内容/没声音/不亮屏等解决方法,首先排除网络问题,再看设置问题,下面介绍这几个问题点对应的正确设置操作步骤: 一.手机这3个设置项是否正确? 1.确认系统已开启允许通知 方 ...

  4. 微信支付curl: (60) SSL certificate problem: unable to get local issuer certificate 解决方法

    微信支付curl: (60) SSL certificate problem: unable to get local issuer certificate 解决方法 参考文章: (1)微信支付cur ...

  5. C#操作FTP报错,远程服务器返回错误:(550)文件不可用(例如,未找到文件,无法访问文件)的解决方法

    C#操作FTP报错,远程服务器返回错误:(550)文件不可用(例如,未找到文件,无法访问文件)的解决方法 参考文章: (1)C#操作FTP报错,远程服务器返回错误:(550)文件不可用(例如,未找到文 ...

  6. 微信公共平台接入之:网页授权(微信授权,微信access_token获取,获取微信用户信息),微信开发者工具使用,微信公众平台测试号申请接入

    1.微信公众平台文档入口 微信公众平台入口地址:https://mp.weixin.qq.com/,截图: 进入之后的文档地址: https://mp.weixin.qq.com/wiki?t=res ...

  7. php微信授权ajax,ajax 实现微信网页授权登录

    项目背景 因为项目采用前后端完全分离方案,所以,无法使用常规的微信授权登录作法,需要采用 ajax 实现微信授权登录. 需求分析 因为本人是一个PHPer ,所以,微信开发采用的是 EasyWeCha ...

  8. 小程序微信授权登录服务器异常,微信小程序授权登录流程(强制绑定手机号码)...

    本文作为多平台用户登录模块设计的扩展设计,即以手机号作为用户的唯一凭证. (图片摘自 2018.10.30) 小程序与服务器是通过自定义登录态来识别用户身份的,以下简称口令(token). 由于微信未 ...

  9. html获取微信code,微信授权获取code(微信支付)

    微信授权获取code(微信支付) 2019-03-02 编程之家 https://www.jb51.cc 编程之家收集整理的这篇文章主要介绍了微信授权获取code(微信支付),编程之家小编觉得挺不错的 ...

  10. 扫码打开微信位置信息界面、微信定位(发送位置)生成二维码解决方案

    最近遇到几个文字位置无法直接在导航软件查找定位的事情,很郁闷,就在想现在二维码时代了,居然还不能扫码实现导航吗? 于是用各导航软件研究了一下,发现导航软件是可以扫码导航的,但是只能针对他自己的链接有用 ...

最新文章

  1. Spring Security Architecture--官方
  2. STL Vector使用例程
  3. bzoj3277 串 (后缀数组+二分答案+ST表)
  4. 【2016年第5期】面向图数据管理系统基准评测的知识图谱统计特征分析
  5. 就这几个简单页面APP,这混小子要我10W块?!大家评评理!
  6. 如何修改服务器标题,修改DEDECMS网页TITLE标签的方法
  7. 从零开始刷Leetcode——数组(11.15.16.18)
  8. simulink入门
  9. OSChina 周三乱弹 ——别拿熊猫不当熊!
  10. “幽灵刹车”困扰特斯拉
  11. 京东有多少钱可以重来?
  12. 企业网站制作网站安全评估技术与漏洞挖掘技术
  13. sql 盲注 (web渗透)
  14. 学计算机会不会老年痴呆,久玩电脑会得老年痴呆吗
  15. 【STM32G4】备战蓝桥杯嵌入式---模块配置---TIM_Output_Compare
  16. python动物重量排序_python动物重量排序_Python小白干货宝典:sorted()函数:列表元素排序...
  17. E005 如何把Excel数据写入Word生成工资字条
  18. Linux下如何修改MAC地址
  19. 铁总:春运第三日全国铁路发送旅客908.5万人次
  20. 通过接口实现完美身份证号有效性验证+身份证与姓名匹配查询身份实名认证接口(实时)

热门文章

  1. vue读取服务器文件,vue读取txt文件
  2. stm32f103c8t6使用LORA传输数据
  3. 第四单元 用python学习微积分(二十八)参数方程、弧长和表面积
  4. python数据分组聚合案例_《利用Python进行数据分析》十章·数据聚合与分组运算·学习笔记(二)...
  5. “QQ尾巴病毒”核心技术的实现(转)
  6. svn访问路径提示Unable to connect to a repository at url
  7. 论能逼疯一个人的nvidia显卡驱动在ubuntu16.04上的安装
  8. 冒险岛左右移动攻击,定时加血加蓝加BUFF JAVA实现
  9. 上海车牌拍卖突破7.5万元
  10. node静态服务器tudo