Re: [請益] 讓網頁只能讓透過ajax取資料 不能直接連

看板PHP作者 (carl)時間12年前 (2012/04/18 04:53), 編輯推噓6(605)
留言11則, 6人參與, 最新討論串3/3 (看更多)
基本上我覺得只要能擋掉一般使用者直接去連網頁的部份就行了 要完全擋掉我覺得有點困難 我認為 雖然有些人可能會刻意的產生特定的request去連這些網頁 不過假如沒有安全性上的問題 那倒是無仿 方法的話我也是想用隨機的token來防止 如果可用session的話 可以在server端產生一個隨機的token 並塞到session裡 接著傳到client網頁中 ajax就利用這個token傳送request server收到request之後 確認request和session中的token是否吻合 吻合的話就傳回應該要傳的資料以及再產生一組隨機的token 塞session後再傳回去 接著client網頁這端收到request並更新內容和token 以此類推 不過這種方法通常都是拿來防止CSRF比較多就是了 然後 我覺得這樣應該就差不多了 當然 使用者是可以收到token之後 查一下然後自己做個request傳過去 不過就像我前面講的 如果沒有安全性上的問題 他這樣做也沒差 而且每次都要查token其實也滿累的 也沒啥好處XD -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.127.141.84

04/18 09:02, , 1F
推,這個比較簡單簡化,當key的都不要在前端顯示
04/18 09:02, 1F

04/18 10:21, , 2F
感謝教學,受教了!
04/18 10:21, 2F

04/18 10:30, , 3F
好奇問一下,「ajax就利用這個token傳送request」
04/18 10:30, 3F

04/18 10:30, , 4F
這邊怎麼用這個 token 傳送 request @@?
04/18 10:30, 4F

04/18 10:48, , 5F
我覺得只是跟前面的概念一樣,把他加到ajax參數再送出去
04/18 10:48, 5F

04/18 10:55, , 6F
可以參考FB_APP的access_token機制
04/18 10:55, 6F

04/18 14:00, , 7F
這方法我是看python的django有這機制才會的XDD
04/18 14:00, 7F

04/18 14:51, , 8F
好奇這個token可以用cookies放在Client端嗎?因為如果要放在
04/18 14:51, 8F

04/18 14:52, , 9F
AJAX參數中的話,假設前端的資料是用list方式呈現多筆的話
04/18 14:52, 9F

04/18 14:52, , 10F
可能撰寫上有點麻煩
04/18 14:52, 10F

04/18 14:54, , 11F
不過就產生單一個Request的來說的話,這個方式真的很方便
04/18 14:54, 11F
文章代碼(AID): #1FZTXQRH (PHP)
文章代碼(AID): #1FZTXQRH (PHP)