我必須爲使用jQuery ajax調用的網站實現內部API。它在JSON上返回數據。阻止對API的外部調用(安全性)
catch:它應該只在從同一個網站調用它時拋出數據。我假設IP不會工作,因爲它在客戶端使用JavaScript調用。
例如,如果有人試圖從另一個域調用json url,它應該會拋出一條錯誤消息。
任何想法?
我必須爲使用jQuery ajax調用的網站實現內部API。它在JSON上返回數據。阻止對API的外部調用(安全性)
catch:它應該只在從同一個網站調用它時拋出數據。我假設IP不會工作,因爲它在客戶端使用JavaScript調用。
例如,如果有人試圖從另一個域調用json url,它應該會拋出一條錯誤消息。
任何想法?
這裏可能有足夠的一種方法是在用戶加載頁面時從後端提供csrf標記(密鑰)。然後在執行ajax請求時傳遞該令牌以確保用戶使用服務器的網頁。至少對於Django來說,支持內置的csrf標記,對於其他框架也可能是相同的。
注意:這不會使您的數據/ API訪問更加安全,但會使其他網站更難以使用您的API。這不是正確認證的替代方案。
鏈接:
長話短說:不可能的。取而代之的是使用正確的認證 –
沒有認證:(這是一個開放的結果形式,它通過jQuery Ajax來完成,以避免重新加載頁面 – andufo
爲什麼不檢查域? – elboletaire