javascript 跨域问题以及解决办法

 更新时间:2017年07月17日 16:23:44   作者:Dear_Mr  
这篇文章主要介绍了javascript 跨域问题以及解决办法的相关资料,需要的朋友可以参考下

javascript 跨域问题以及解决办法

什么是跨域问题?

跨域这个问题是由于浏览器的同源策略引起的,请求的URL地址,必须与浏览器的URL是相同协议、相同域名、相同端口的,否则是不允许访问的

浏览器URL 要访问的URL 结果
http://www.123.com/index http://www.123.com/server 成功
http://www.123.com/index http://www.456.com/server 域名不相同,跨域
http://www.123.com:8080/index http://www.123.com:8888/index.htm 端口不同,跨域
http://www.123.com/index https://www.123.com/index 协议不同,跨域

解决办法

凡是拥有src属性的标签都可以跨域,比如script、img、iframe标签

JSONP

JSONP就是应用了script标签,JSONP的全称是JSON With Padding,JSONP由两部分组成,回掉函数和数据,回掉函数就是当响应到来时应该在页面中调用的函数,回掉函数的名字是在请求中指定的,而数据就是传入回掉函数的JSON数据

例子:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>

<script type="text/javascript">
  function jsonCallback(data){
    alert(data);
  };
  var url = "http://localhost:8888/test?callback=jsonCallback";
  var script = document.createElement('script'); 
  script.type = "text/javascript";
  script.setAttribute('src', url); 
  document.getElementsByTagName('head')[0].appendChild(script);
</script>
</head>
<body>
</body>
</html>

缺点:确认JSONP请求是否失败并不容易

​ 安全性的问题,JSONP是从其他域加载代码执行,所以要确定其可靠性

以上就是javascript 跨域问题以及解决办法的讲解,大家如果 有疑问可以留言讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

相关文章

  • 微信小程序多项选择器checkbox

    微信小程序多项选择器checkbox

    这篇文章主要为大家详细介绍了微信小程序多项选择器checkbox,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-07-07
  • JS实现小球的弹性碰撞效果

    JS实现小球的弹性碰撞效果

    这篇文章主要介绍了JS实现小球的弹性碰撞效果 ,代码简单易懂,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2017-11-11
  • 深入学习JS XML和Fetch请求

    深入学习JS XML和Fetch请求

    这篇文章主要介绍了深入学习JS XML和Fetch请求,文章通过围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-09-09
  • js遮罩效果制作弹出注册界面效果

    js遮罩效果制作弹出注册界面效果

    这篇文章主要为大家详细介绍了js遮罩效果制作弹出注册界面效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-01-01
  • 详解JavaScript发送埋点请求的两种方式

    详解JavaScript发送埋点请求的两种方式

    对于发送埋点请求这种应用场景,我们有两种简单的处理方式:动态创建<script>和<img>两种方式。本文就详细讲讲二种方式的实现,需要的可以参考一下
    2022-06-06
  • javascript实现悬浮跟随框缓动效果

    javascript实现悬浮跟随框缓动效果

    这篇文章主要为大家详细介绍了javascript实现悬浮跟随框缓动效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-03-03
  • js常用节点操作实例总结

    js常用节点操作实例总结

    这篇文章主要介绍了js常用节点操作,结合实例形式总结分析了JavaScript针对dom节点的遍历、查找、创建、删除、克隆等相关实现技巧与注意事项,需要的朋友可以参考下
    2023-04-04
  • 你的编程语言可以这样做吗?

    你的编程语言可以这样做吗?

    你的编程语言可以这样做吗?...
    2006-09-09
  • JavaScript实现10秒后再次获取验证码

    JavaScript实现10秒后再次获取验证码

    这篇文章主要为大家详细介绍了JavaScript实现10秒后再次获取验证码,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-12-12
  • uniapp导航栏组件使用步骤

    uniapp导航栏组件使用步骤

    在uni-app中,可以使用官方提供的uni-navigator组件来实现导航栏的功能,这篇文章主要介绍了uniapp导航栏组件如何使用,需要的朋友可以参考下
    2024-01-01

最新评论