[英]Asynchronous cross-domain POST request via JavaScript?
我可以創建一個表單並使用它來向任何站點發出POST請求,事情是FORM方法不是異步的,我需要知道頁面何時完成加載。 我嘗試使用帶有表單的iframe來解決這個問題,但沒有成功。
有任何想法嗎?
編輯
遺憾的是,我無法控制響應數據,它從XML,json到簡單文本都有所不同。
您可以捕獲iframe
的onload
事件。 將form
到iframe並監聽onload。 您將無法訪問iframe的內容,只是事件。
嘗試這樣的事情:
<iframe id='RS' name='RS' src='about:blank' onload='loaded()'></iframe>
<form action='wherever.php' target='RS' method='POST'>...</form>
腳本塊:
var loadComplete = 0
function loaded() {
//avoid first onload
if(loadComplete==0) {
loadComplete=1
return()
}
alert("form has loaded")
}
如果您想要發出跨域請求,您應該進行JSON調用或使用服務器端代理。 服務器端代理很容易設置,不確定為什么人們會這么做。 在其中設置規則,以便人們不能使用代理來請求其他事情。
如果從跨域帖子返回的數據是JSON,則可以動態添加指向返回數據的URI的腳本標記。 瀏覽器將加載該“腳本”,然后您可以從其他JavaScript訪問。
你不能使用javascript跨域進行任何操作。 你必須使用像PHP或asp之類的后端語言。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.