此代碼可與jQuery結合使用,以在頁面中嵌入一個按鈕,讓用戶可以與我的站點共享鏈接。JavaScript API在主站點上工作正常,但無法在外部服務器上工作
<div class="button" data-text="Button text" data-url="http://externalserver.com">
</div>
<script src="http://mainserver.co.uk/api.js"></script>
JavaScript文件必須使用XMLHttpRequest與PHP文件連接到檢查您是否已登錄或沒有,並且然後張貼在我的網站的評論。這很簡單,因爲您需要做的只是點擊它創建的按鈕。或不。
那麼,它的工作原理罰款http://mainserver.co.uk任何頁面上,但我的外部服務器上,它只是顯示控制檯的錯誤,如
XMLHttpRequest cannot load filename. Origin http://externalserver.com is not allowed by Access-Control-Allow-Origin.
嗯,我知道這一定是可能的,因爲推特,谷歌和Facebook都可以做到這一點,爲什麼我不能?
編輯
好的,謝謝。但這仍然是一個問題。
用戶在主站上有會話,告訴網頁他們已登錄。
使用此代碼,我可以測試該代碼。
<?php
session_start();
header("Access-Control-Allow-Origin: *");
if (isset($_SESSION["user"]))
{
echo "0";
}
else
{
echo "1";
}
?>
當我登錄並運行此代碼,它在外部網站主網站上,則返回0,而是1,因爲如果我的主網站上進行測試時,在只登錄
http://en.wikipedia.org/wiki/Same-origin_policy – SLaks
在這裏閱讀更多:http://websitez.com/javascript-cross-domain-post-get/ – Patryk
@SLaks,怎麼辦嘰嘰喳喳,谷歌+和Facebook避免這個? – user2751288