簡體   English   中英

如何使用ASP.NET和Ajax繞過CORS策略?

[英]How can i bypass CORS Policy with ASP.NET and Ajax?

我想繞過CORS政策從另一個域獲取數據XML 我嘗試了很多,但是沒有運氣。 有:

  • JSONP :通過這種方式,我不知道如何使用它。 因為XML構造不同於JSONP構造。 如果是,請幫助我如何使用JSONP從另一個域獲取數據XML。
  • 代理 :我項目的原因是ASP.NET Framework 4.0。 因此,我創建了一個代理頁面並使用它來獲取XML。 示例: http:// localhost:4030 / proxy.aspx?u = http://onotherdomain.com/data.xml 但是我無法通過基本的受保護站點獲取數據。 總是返回未經授權的401。

對您來說,JSONP更快還是Proxy更快?

謝謝收看

如果其他域未明確信任您,則出於安全原因,您不能通過AJAX從客戶端調用它,除非您使用JSONP。

但是,只要您僅堅持GET請求,並且服務器知道如何使用JSONP格式的響應進行響應,就只能使用JSONP。

另一方面,如果他們確實明確信任您,則您有幾種選擇。

  • 只要您使用帶有適當標題的現代瀏覽器(IE9仍然對此存在問題),服務器上的CORS支持就可以了。
  • XDomain ,本質上是一個JavaScript代理填充程序。 但是,這也需要明確包含請求域。

另一方面,如果您在端部創建了可以調用另一個域的代理服務器端,則不會有任何問題。

理論上,服務器端代理應該總是比ajax選項要慢,因為您要進行兩次調用而不是一次調用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM