如果后端接口设置了限制域名访问,能否通过node或者ajax伪装成对方的域名或ip请求到数据?
这样的话ajax的jsonp是行不通了,可以通过node中间件来做转发
middleware: [ // 请求代理,按需设置
proxy('/api', {
target: 'http://op.juhe.cn', // 目标地址
changeOrigin: true,
ws: true, //websocket
pathRewrite: {
'^/api': '' //重写地址
}
})
]
由于浏览器安全策略,ajax 修改不了Origin、Referer 这类对于安全性有要求的请求头。
至于node,不是浏览器了,对于普通请求,没有跨域的问题。
如果你设置了限制域名访问,那么也可以修改请求头的origin、referer来达到伪装。这个是没法禁止的,只是稍微提高一下反爬门槛而已。
10 回答11.7k 阅读
2 回答3.2k 阅读✓ 已解决
4 回答2.2k 阅读✓ 已解决
3 回答1.2k 阅读✓ 已解决
3 回答855 阅读✓ 已解决
2 回答2.1k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
可以通过niginx 配置反向代理解决跨域问题