【发布时间】:2017-02-19 10:51:20
【问题描述】:
我有一个网站,我需要一种通过 http 请求从不同网站获取 html 数据的方法,我一直在寻找实现它的方法,大多数人说是通过 ajax 调用。
ajax 调用被链接阻止,所以我想尝试一个普通的跨域 http 请求,希望它不会被阻止。
【问题讨论】:
-
应将“不同的网站”配置为接受来自您的域的请求。
-
即使是普通的 HTTP 请求?我知道 ajax 可以被阻止,但 HTTP 请求可以吗?
-
如果该网站不允许您的域,您可以发送请求,但它们将根据请求类型、协议而被独立拒绝。
-
@Midnight_Blaze 你如何发送没有 ajax 的 HTTP 请求(又名 XmlHttpRequest)?
-
据我了解,您可以发送但请求会被浏览器阻止。如果未设置 CORS,则之前的标头交换会导致您的请求被阻止。如果您无法控制其他域并且它没有为您提供像 JSONP 这样的知名接口,那么我认为您最好的选择是使用后端代理。因此,您的 ajax 调用将向您服务器上的脚本发送请求。并且该脚本不受同源策略限制,将能够从另一个域获取您需要的数据并将其发送到您网站的前端。
标签: javascript c# http-request