[問題] 如何讓每篇文章的ID都加密?

作者: kajm (kajm)   2016-07-10 23:59:01
因為這篇除了JS以外,可能還會跟後端語言和資料庫有關,
但主要是ajax的部分因為會被任何人都能取得,
所以還是選擇在這個板發問。
是這樣的,
最近想做一個像是Dcard裡面發文匿名的功能,
發現Dcard讀討論串的回應時是用api去讀json,
然後會取出包含id, postId等文章資訊,
其中id我猜是加密後的會員ID,
但是它每一樓都不同,即使是同一人也不一樣,
所以我在想是不是應該還有加入其他動態的參數進行雜湊(例如:postId)
不過,這樣子是不是每人每次讀取文章時,
都要再做一次雜湊、比對的動作?
這樣不會很吃效能嗎?
因此好奇的發文想問問前輩們有沒有更有效率的做法呢?
補:
剛剛有想到比較傳統的做法是,
當我讀某一串討論串時,直接去SELECT我在這一串的所有PostId就好,
然後遇到是我的PostId時,就顯示[編輯]、[刪除]按鈕。
或許這樣比較好?!
可是這樣Dcard為何還要傳Id出來呢?
作者: kajm (kajm)   2016-07-11 00:01:00
主要是要用來辨識是否為本人,用以顯示[編輯]或[刪除]按鈕
作者: shadowjohn (轉角遇到愛)   2016-07-11 09:32:00
編輯、刪除也要加條件,是本人才能增編刪自己的文章ajax也是能綁定session的,沒session就查不到
作者: kajm (kajm)   2016-07-11 13:06:00
s大說的綁定是指用php將session輸出在ajax裡面嗎?
作者: shadowjohn (轉角遇到愛)   2016-07-11 13:33:00
你文章的第二句 (ajax可以被任何人取得) 有誤如果你的系統需登入,登入後才註冊sessionajax的取得就可以依使用者的session作不同的事情實際上是否顯示編、刪,也應優先看session跟id的user不一致也不顯示,管理員強制顯示,大概是這樣
作者: eight0 (欸XD)   2016-07-11 20:42:00
不要回傳作者資料就匿名啦想知道能不能編就多回傳個「該文章是否由自己所作」
作者: kajm (kajm)   2016-07-11 22:56:00
了解,我再試試看。感謝兩位大大的指點!

Links booklink

Contact Us: admin [ a t ] ucptt.com