美文网首页
跨域问题的解决方案

跨域问题的解决方案

作者: 探索1者 | 来源:发表于2018-12-12 14:36 被阅读0次

跨域(Cross Domain)

什么是跨域

先来说下 同源策略
同源:在多个地址中,相同协议,相同域名,相同端口 被视为 "同源"
HTTP 中,必须是同源地址才能互相发送请求,非同源的请求会被拒绝(<script><img>除外)
例如:
http://www.baidu.com/a.htmlhttp://www.baidu.com/page/b.html 就是同源地址
http://localhost:5000/a.htmlhttp://127.0.0.1/server是 非同源,域名不同

跨域:非同源的网页,相互发送请求的操作就是跨域操作

解决方案

一 通过 <script> 向服务器发送请求
由服务器资源指定前端页面的哪个方法来执行响应的数据

实现步骤
1.前端中想实现跨域操作时,动态创建 script 标记
var sciprt = document.createElement("script")
2.为 script 元素设置相应属性
设置 type 的值为 text/javascript
设置 src 的值为 请求地址
3.发送请求
将创建好的 script 元素追加到网页中即可

var body = document.getElementsByTagName("body")[0]
body.append(script)

4.在前端,创建处理数据的响应方法

function process(data){
    ...
}

5.在服务器端,响应数据
特点:指定调用前端的哪个处理方法

def xxx():
    return "process('xxx')"
jquery 的跨域

jsop: json with padding
方案一

$.ajax({
    url: 'xxx',
    type: 'get/post',
    dataType: 'jsonp', // 指定为跨域访问
    success.function(data){
        // 响应成功后的处理
    } 
})

方案二

$.ajax({
    url: 'xxx',
    type: 'get/post',
    dataType: 'jsonp', // 指定为跨域访问
    jsonp: 'huidiao', // 定义 callback 的参数名
    jsonpCallback: 'xx', // 定义jsonp的回调函数名,xx函数需要在外面自己定义
})

相关文章

  • 跨域问题,解决方案

    跨域问题,解决方案 - Nginx反向代理跨域问题,解决方案 - CORS方案此为原作者的链接:跨域问题,解决之道

  • Web前后端跨域问题处理

    跨域问题有前台跨域(iframe间)和后台跨域。 前台跨域的解决方案可以采用跨域文档通讯(Cross domain...

  • 开发环境跨域和生产环境跨域

    开发环境跨域 前后端分离,IP地址不同,请求数据必然导致跨域问题;解决方案:proxy设置 生产环境跨域 解决方案...

  • Js请求跨域问题

    一、请求跨域问题概述 跨域:指的是协议名、端口或者域名不一致的情况都是跨域。 二、跨域问题的解决方案 1、同域代理...

  • 2、JS-Web-API知识点

    跨域问题:跨域的解决方案?教程: https://www.imooc.com/video/6238https://...

  • JWT简记

    JSON Web Token(JWT)是目前最流行的跨域认证解决方案。 跨域认证问题及传统解决方案 传统认证流程 ...

  • Spring Boot使用CORS解决跨域问题

    一、跨域问题描述 Web开发经常会遇到跨域问题,解决方案有:jsonp,iframe,CORS等等。CORS 与 ...

  • 跨域

    博客 说说跨域那些事儿 不要再问我跨域的问题了 前端常见跨域解决方案(全) 同源策略 JSONP(填充式JSON)...

  • uni-app之浏览器跨域问题解决方案

    Chrome调试跨域问题解决方案 1.跨域CORS(Cross-Origin Resource Sharing) ...

  • 面试官:那有没遇到跨域问题,如何解决跨域?

    面试官:有没遇到跨域问题,如何解决跨域? 一、同源策略 谈到跨域问题,要先谈浏览器的同源策略。 二、解决方案 1、...

网友评论

      本文标题:跨域问题的解决方案

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