美文网首页
Ajax 请求和跨域

Ajax 请求和跨域

作者: 向布谷鸟说早安 | 来源:发表于2019-02-07 09:46 被阅读4次

    跨域的几种方式:

    cors方式

    cross-orign-resource-shareing(跨域)
    参考:http://www.ruanyifeng.com/blog/2016/04/cors.html

    分为简单请求和非简单请求。
    非简单请求会发送preflight(预请求)

    cors跨域方式是浏览器自己带的。
    主要控制方式是在服务器端,同时需要浏览器的部分配合。

    浏览器端主要的方法:
    Access-Control-Request-Origin(Origin)
    Access-Control-Request-Method
    Access-Control-Request-Headers
    带凭据的请求
    withCreditials:

    服务器主要的方法:
    Access-Control-Allow-Origin:
    Access-Control-Allow-Methods:
    Access-Control-Alllow-Headers:
    Access-Control-Max-Age:
    带凭据的请求
    Access-Control-Allow-Creditials:

    JSONP

    参考:https://segmentfault.com/a/1190000015597029
    后台服务相当于中转站,在前端的一个script标签里创建另一个script标签,并指定新的script标签的src,把方法和参数都从url中传给后台。
    后台得到url中的参数(包括方法和方法参数),返回到前端,作为新的script的内容执行带参函数。

    缺陷:
    1.只能用get方法;
    2.不安全:从其它域中引用代码,一定要保证安全,一旦出现安全问题,几乎要放弃使用;
    3.不能判断jsonp是否请求失败。script标签的onerror事件浏览器支持性不是很好。

    相关文章

      网友评论

          本文标题:Ajax 请求和跨域

          本文链接:https://www.haomeiwen.com/subject/kunnjqtx.html