2012-09-20 40 views
5

一些smartass人正在使用我的api-centric web應用程序克隆我的服務,並使它看起來像他們自己的。有沒有辦法確保所有的Ajax請求都來自我的網站?如何確保來自我的網站的請求?

當然,我可以使用引用標頭,但他們可以很容易地僞造它。

+0

它們是如何遮蓋它的?我能想到的唯一方法就是使用ssl。 –

+0

[如何在不使用驗證碼的情況下保護JSON調用]的可能重複(http://stackoverflow.com/questions/12444608/how-to-secure-json-call-without-using-a-captcha) – DCoder

回答

5

在客戶端發送任何Ajax請求之前,在客戶端點擊您的站點時設置一個cookie。

然後在服務Ajax時驗證cookie。

或者您也可以只發布您的Ajax請求。這樣他們受制於相同的原產地政策。

雖然它會打破整個寧靜的意識形態。

http://en.wikipedia.org/wiki/Same_origin_policy

+0

安全> ideology儘管POST爲此目的也讓我感到不安。 –

+0

+1對於一個好的/正確的答案 –

+1

我想jQuery的'JSONP'將圍繞這個「同源」限制工作,並且像往常一樣繼續獲取數據。 –

相關問題