AJAX跨域的详细介绍(代码示例)

本篇文章给大家带来的内容是关于ajax跨域的详细介绍(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

AJAX 的跨域问题,常用的解决方法有两种,简单记录下,详细内容查看参考资料。以下示例自建两个域名测试,www.test.com、www.example.com。

同源策略

同源策略限制从一个源加载的文档或脚本如何与来自另一个源的资源进行交互。这是一个用于隔离潜在恶意文件的关键的安全机制。

两个页面,如果域名协议端口都相同,即是同源,其间的交互不存在问题。同源策略是很重要的安全机制,但是有些时候需要突破这种机制,这就需要跨域

JSONP

JSONP 是很常用的方法,它是利用 标签没有跨域限制的原理实现。以下是在 www.test.com 中使用 JQuery 示例

$.ajax( {        url:'//www.example.com',    data:{name:'tom'},        type:'get',        dataType:'jsonp',    jsonp: "callback",        success:function(data) {              console.log(data)       }})

登录后复制

以下是 www.example.com 的 PHP 处理

<?php$callback = $_GET['callback'];$name = $_GET['name'];// 处理数据$data = md5($name);echo $callback . '(' . json_encode($data) . ')';

登录后复制

CORS

CORS (Cross-origin resource sharing),跨域资源共享标准允许 Web 应用服务器进行跨域访问控制。相对于 JSONP 只支持 GET ,CORS 支持更多的 HTTP 请求,同时更简单、安全。不过 CORS 可能会存在兼容问题。
以下是在 www.test.com 中发送 AJAX 请求

$.ajax( {        url:'//www.example.com',    data:{name:'tom'},        type:'post',        dataType:'json',      success:function(data) {              console.log(data)       }});

登录后复制

www.example.com 的 PHP 处理

<?phpheader("Access-Control-Allow-Origin: http://www.test.com");$name = $_POST['name'];// 处理数据$data = md5($name);echo json_encode($data);

登录后复制

以上就是AJAX跨域的详细介绍(代码示例)的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2734482.html

(0)
上一篇 2025年3月8日 01:06:01
下一篇 2025年3月8日 01:06:19

AD推荐 黄金广告位招租... 更多推荐

相关推荐

发表回复

登录后才能评论