Slog90_使用React框架进行前端开发2

ArthurSlog

SLog-90

Year·1

Guangzhou·China

October 4th 2018

个人网站:http://www.arthurslog.com

CSDN:https://blog.csdn.net/u010997452/article/list/1

GitHub:https://github.com/BlessedChild/ArthurSlog

NPM:https://www.npmjs.com/~arthurslog

掘金:https://juejin.im/user/59f2a424f265da432f305c66/posts

简书:https://www.jianshu.com/u/b9ebe10f0534

segmentfault:https://segmentfault.com/u/arthurslog/articles

将欲歙之 必故张之 将欲弱之 必故强之 将欲废之 必故兴之 将欲取之 必故与之 是谓微明

开发环境MacOS(Mojave 10.14 (18A391))

信息源

Cross-origin resource sharing: https://en.wikipedia.org/wiki/Cross-origin_resource_sharing

开始编码

可能会有点跳,目前已经完成基本的前后端架构、数据库的对接

碰到了一点跨域的问题,本篇简单记录一下

由于写的速度跟不上开发速度,开发的过程后面每天再补上了

跨域问题,说到底就是浏览器的局限问题

浏览器的权限过大导致安全机制跟不上,所以暂时对自己做一些限制

在总体限制的情况下,来想办法实现具体的业务

因此出现了各种解决方案

但本质上,都是 “平衡业务与安全,再执行” 的思路

这里我采用了CORS (Cross-origin resource sharing),英文理解起来比较准确

前后端完整代码:

Client

Server

这里是图解示意图: https://upload.wikimedia.org/wikipedia/commons/c/ca/Flowchart_showing_Simple_and_Preflight_XHR.svg

简单来说,当你是GET和HEAD方法 同时没有 自定义的HTTP headers 时,服务器直接返回数据给你

除此之外,客户端需要跟服务器进行两次对话

第一次是查看 有没有 "Access-Control-*“这样的 headers,如果没有就报错

如果有,再返回数据

所以第一次并没有真正传出数据,第二次才行

至此,使用了 CORS 实现了跨域问题。

如果你喜欢我的文章 欢迎点赞 留言

谢谢

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181004G0BSAU00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券