ajax跨域之CORS-创新互联
跨域
背景
同源策略:不同域的客户端脚本在没有明确授权的情况下,不能读写对方资源
成都创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:成都网站建设、网站制作、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的白水网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
由于浏览器同源策略的存在,使得某些场景下需要跨域获取数据的场景就需要一些方法来实现跨域请求
同域:同协议 同域名 同端口
跨域手段1-CORS
举例
服务器A客户端代码
服务器B服务端代码
const Koa = require('koa')
const bodyParser = require('koa-bodyparser')
const app = new Koa()
const util = require('./util')
// bodyParser 插件,处理 post 提交过来的数据
app.use(bodyParser())
app.use(async ctx => {
const url = ctx.url
util.log(`访问地址:${url};请求方法:${ctx.method}`)
const origin = ctx.headers.origin //获取域名
if (origin && ctx.query.cors) {
ctx.set('Access-Control-Allow-Origin', origin) //满足约定条件,设置响应头
}
ctx.body = util.parse({
data: 'hello cors'
}, ctx.method)
})
app.listen(3000, () => {
util.log('服务启动,打开 http://127.0.0.1:3000/')
})
结果演示
1.当直接点击获取数据
响应头中无授权访问字段
2.当点击跨域访问时
服务器B返回响应头中带了允许服务器A访问的授权字段
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
本文标题:ajax跨域之CORS-创新互联
分享网址:http://scjbc.cn/article/ddjdgo.html