1
IsaacYoung 2019-09-29 08:40:09 +08:00
用自己的服务器代理一下
|
2
Liang 2019-09-29 08:51:23 +08:00
proxy server
|
3
dbj1991 2019-09-29 09:20:35 +08:00
jsonp
|
4
wunonglin 2019-09-29 09:30:14 +08:00
nginx 饭袋
|
5
arrow8899 2019-09-29 09:34:06 +08:00
前端没法搞的,加个 nginx 代理一下
|
6
secretman 2019-09-29 09:55:56 +08:00
找别人家去啊
|
7
fumichael 2019-09-29 10:05:00 +08:00 3
跨域是浏览器的同源策略
Authorization 是接口鉴权 那个回复 jsonp 的我就不想说他了 |
10
tinytin 2019-09-29 12:15:13 +08:00 via iPhone
不允许跨域,你前端加啥都没用
|
11
catch 2019-09-29 12:19:24 +08:00 via iPhone
你把大火逗乐了
|
12
kyoukai 2019-09-29 14:12:51 +08:00
iframe 不算跨域,试试?主页面操作子页面的 iframe。
|
13
pinews OP |
16
littlespider89 2019-09-29 14:58:44 +08:00
@pinews 不允许跨域浏览器是根本不能用 xhr 访问其他域的,不管怎么操作都不行,这是最基本的安全保证
form 表单提交和 xhr 是不一样的,form 表单提交你已经跳转到别人的页面上了,你还是没办法获取并操作数据 |
18
speedofstephen 2019-09-29 15:03:25 +08:00
隐约记得 chrome 关闭一个安全选项,就可以进行跨域访问了。
|
19
npe 2019-09-29 15:06:51 +08:00 via iPhone
是的,浏览器不允许 XHR 跨域访问。
|
21
cyrbuzz 2019-09-29 15:10:41 +08:00
巧了...
刚写了一个前端的学习项目,调用的实验楼 API 也是不允许跨域的。 解决方法也是常规的在自己写一个后端代理做转发。 这里是前端地址( Vue + axios ): https://github.com/HuberTRoy/vue-shiyanlou 这里是写的代理转发地址( Django + requests ): https://github.com/HuberTRoy/vue-shiyanlou-backend 还总结了一下最后有写跨域部分: https://juejin.im/post/5d8ec6f0e51d4577ef53de1e |
22
Curtion 2019-09-29 15:14:32 +08:00
只能用服务器代理一下,或者修改 chrome 配置,例如使用 electron 开发软件就可以关闭同源策略来跨域访问。
|
23
pinews OP @littlespider89 原来的想法是演示性质的,只要结果预期就可以了。
@Trim21 你太了解我了 @arrow8899 有些 api 是可以跨域的,如 github,如果采用非网页开发,就不考虑跨域问题了。 @wunonglin 明白了。 |
25
Curtion 2019-09-29 15:44:20 +08:00
@pinews #24 electron 可以跨域是因为可以设置 webPreferences.webSecurity = false 来关闭 web 安全检测达到跨域。如果是网站的话你只能要求有效访问者关闭浏览器中的安全策略,如果你不能这么做,那么就只能使用服务器代理者一种方式
|
26
340244120w 2019-09-29 15:50:14 +08:00
|
27
yexiaoxing 2019-09-29 18:09:30 +08:00 via iPhone
now.sh 搞个 serverless 的代理
|