js 前端跨域访问给出示例
时间: 2023-09-06 18:11:32 浏览: 98
好的,下面给您提供一个简单的前端跨域访问的示例:
假设有两个网站:a.com 和 b.com,现在在 a.com 上需要访问 b.com 上的数据,但是由于跨域的限制,直接访问是不允许的。
1. 在 b.com 上设置允许跨域访问的 header
可以在 b.com 的服务器端设置 header,允许 a.com 进行跨域访问。例如,在 b.com 的服务端代码中加入如下代码:
```
// 允许 a.com 进行跨域访问
header("Access-Control-Allow-Origin: http://a.com");
```
2. 在 a.com 上使用 JSONP 进行跨域访问
JSONP(JSON with Padding)是一种跨域访问的方式,它利用了 script 标签可以跨域访问的特性。例如,在 a.com 的前端页面中,可以通过创建一个 script 标签来访问 b.com 上的数据:
```
<script>
function handleData(data) {
// 处理返回的数据
}
var script = document.createElement('script');
script.src = 'http://b.com/data?callback=handleData';
document.body.appendChild(script);
</script>
```
注意:在使用 JSONP 进行跨域访问时,需要在 URL 中指定一个回调函数名,并且在服务器端返回一个函数调用,例如:
```
handleData({data: '这是返回的数据'});
```
这样,浏览器就可以执行这个函数,并且将服务器返回的数据作为参数传入。
阅读全文