我有一個具有以下功能的網站:用戶來到www.mysite.com/page.php
。該網頁上的JavaScript,使AJAX API調用www.mysite.com/api.php
和顯示效果在同一個頁面上www.mysite.com/page.php
如何防止網站外部的API調用
我害怕的情況:有人開始用我的自己的軟件api.php的情況下,因爲使用成本www.mysite.com/api.php
我有點錢。因此,我希望只有訪問過www.mysite.com/page.php
頁面的用戶才能從www.mysite.com/api.php
獲得有效結果。用戶無法登錄我的網站。
什麼是正確的方法來做到這一點?我想我可以開始一個會話,當用戶來到page.php,然後不知何故,可能首先檢查api.php有一個有效的會話ID會話存在?
最大的問題是如何區分機器人與人類。編寫一個首先「訪問」你的網站,然後使用檢索到的會話ID /標記/任何訪問你的API的機器人並不是很難。 – lexicore 2014-12-05 17:19:34
謝謝大家快速回復!儘管沒有100%的保護再一次,PHP會話可能是對這種情況最好的「軟」保護。 – Petri 2014-12-05 17:52:12