簡體   English   中英

跨域/跨瀏覽器,ajax調用

[英]Cross domain / Cross browser , ajax call

這是場景

我在abc.com有一個main.js文件,該文件執行$.post("index.php")以訪問來自同一域( abc.com )中index.php內容。

這很好,因為它是相同的域ajax調用。

但是現在,任何人都可以在他們的網站(例如域xyz.com )中使用main.js

現在,路徑index.php (在$.post("index.php") )引用域xyz.com文件(不是abc.com )。 如果我輸入了絕對路徑http://www.abc.com/index.php ,則在某些瀏覽器中這將不起作用(跨域Ajax限制)

現在,

如果我在php文件中放置允許跨域的標頭,則它也不起作用,即在7及以下版本中失敗。

ps我需要將內容放在index.php文件中(而不是main.js中)。 另外,我不想包含一個php文件

<script type='text/javascript' src='http://abc.com/index.php'></script>

而且我寧願不添加.js文件作為服務器中的php文件(這樣我就可以將php代碼放在js文件中)。

內容很大,我無法get請求或jsonp(我認為jsonp不允許大數據)

我想念什么嗎? 我該如何實現?

您可以使用JSONPCORS來實現。

我使用了JSONP,下周將嘗試CORS。 我認為CORS仍然不同步,因此對我來說可能具有優勢。 至少那是我的希望

我認為您需要server side solution 在php中讀取文件(即index.php ),然后將所需的輸出保存在hidden field並在DOM上使用。您可以使用該隱藏字段中的數據。

服務器端的curl請求也應該起作用。 我會說先嘗試JSONP,但如果無法正常工作,請進行curl請求

暫無
暫無

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

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