我需要从以下URL加载页面:https://medalist-a805c.web.app/HeardSuggest_Medalist.html实际上是从Express服务器加载页面。我可以使用快速中间件cors。但是问题是,即使我需要加载以下网址:https://www.alwaysheard.com/embed/Medalist/brand/ $ 2a $ 10 $ Z9ib22YZyRWWZz / Vlzju3u9eZCZM.a8oUYorNPsKGzLPKu6vM696K?uname = embed&orgin = https%3A%2F%2Fwww.alwaysheardcom。
我面临的怪异问题是,它总是返回主页而不是我尝试获取的URL:https://www.alwaysheard.com/embed/Medalist/brand/ $ 2a $ 10 $ Z9ib22YZyRWWZz / Vlzju3u9eZCZM.a8oUYorNPsKGzLPKu6vM696K?uname = embed&orgin = https %2F%2Fwww.alwaysheard.com
任何帮助将不胜感激。非常感谢。
这是用于expressjs服务器的。
这是我最喜欢的通话代码:
$.ajax({
url: _url,
data: { uname: "embed", orgin: _origin },
// dataType: 'json',
crossDomain: true,
type: "GET",
mode: 'no-cors',
headers: {
'mode': 'no-cors',
// "X-TOKEN": 'xxxxx',
// 'x-Trigger': 'CORS',
// 'Access-Control-Allow-Headers': 'x-requested-with',
// "Access-Control-Allow-Origin": "*",
// 'Authorization': 'Bearer fadsfasf asdfasdf'
},
success: function (data) {
console.log("data: ", data);
$("body").html(data);
}
});
在后端,我正在使用app.use(cors())
;
答案 0 :(得分:0)
Your URL首先将302重定向返回到主页,然后$.ajax()
系统(实际上是其下的XMLHttpRequest系统)将自动跟随该重定向。
您可以在此处查看有关该主题的讨论:
How to prevent ajax requests to follow redirects using jQuery
在较新的浏览器中,您可以改用fetch()
界面,它包含一个redirect
option,允许您告诉它不要遵循重定向。
仅供参考,目前尚不清楚您实际上要完成什么。没有要从this URL检索的“页面”。这将返回302状态和一些标题,没有页面。
如果您不清楚,your long url返回以下响应:
HTTP/1.1 302 Found
Date: Fri, 18 Oct 2019 17:04:05 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 23
Connection: keep-alive
Server: nginx/1.14.1
Access-Control-Allow-Origin: *
Set-Cookie: _csrf=j6JfsEb_JbmSJlvHDoyhgatS; Path=/
Set-Cookie: connect.sid=s%3A8C1PVNBcm5395dwmPJ4Xbl7BNASxPH4W.WFZ6uz3NklxaObnWvZaZXI%2BoH5VdM9dnOi2VCTw3J%2BI; Path=/; Expires=Mon, 15 Oct 2029 17:04:05 GMT; HttpOnly
Surrogate-Control: no-store
Cache-Control: no-store, no-cache, must-revalidate, proxy-revalidate
Pragma: no-cache
Expires: 0
Location: /
Vary: Accept
此内容是通过curl -l -v yourlongurl
检索的。