2011-05-06 29 views
2

頁面A包含執行XMLHttpRequest的JavaScript函數。頁面A在iframe中加載頁面B。頁面B執行parent.makeRequest()函數,該函數依次執行XHR請求。我希望XHR請求的引用來源爲頁面B,但是它是頁面A。有沒有什麼辦法解決這一問題?XMLHttpRequest引用和iframe

+1

您爲什麼期望它是頁面B? XHR請求正在由頁面A完成。 – 2011-05-06 13:21:33

回答

5

您無法控制Referer標頭的值。

使用setRequestHeader方法進行XHR請求時,可以調整某些HTTP標頭。但是,Referer標題特別例外。從規格:

上述頭[包括Referer]由用戶代理控制,讓它控制傳輸的方面。這在一定程度上保證了數據完整性。

但是,您可以設置自定義標題。例如,如果這適合您的應用程序,則可以使用X-Referer

xhr.setRequestHeader('X-Referer', location.href);