Re: [問題] 菜鳥發問

看板Web_Design作者 (-858993460)時間12年前 (2011/12/23 08:17), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串4/4 (看更多)
※ 引述《p52189 (皮爺)》之銘言: : 謝謝 : 不好意思這個問題問得不太好 : 我想問的是 : 一個session屬於一個客戶端這個我可以理解 : 但是在伺服器上哪些程式或頁面可以使用這個session : 最大的權限範圍到哪裡呢? : 如果有多個程式或頁面可以使用這個session : 比如同一個Web App也許(我沒有實作過)可以共用這個session : 那麼session存活的時間是否跟使用它的程序有關? 這就要稍微了解一下 session 的機制了 基本上在 session 的處理當中 使用者會有一個 session id 伺服器端是靠這個 session id 辨認這些資料是這個使用者的 第一次接上時使用者會拿到一個 session id 在後續的處理當中使用者會告訴伺服器我的 session id 是這個值 那伺服器就能由這個 id 讀出屬於這個使用者的 session 資料 而有效期限是伺服器端定的 和個別程式無關 打個比方就是推文說的遊樂園的門票 或者恰當一點比喻叫一日全區通行票 在遊樂園入口(第一次連接)買了這票之後 去其他區只要亮出這張票(session id) 園區就會知道是你來了 如果園區有電腦連線的話 某區的工作人員(其他程式)甚至可以知道你先前去過哪些區(session data) 而你所需要的就只是這張門票而已 之所以有「一日」也就是代表 園區將這張門票的有效期限(這個 session 的存活期限)定為一整天 時間過了這張門票就失效了 --- 那麼 session id 到使用者手上的方法有兩種 一種是有時候你會在 URL 上看到的 &session_id=1a2b3c4d5e6f7a8b9c0d1e2f3a4b5c6d 後面那一串十六進位數字就是 session id 但有時候可能不希望這個 session id 掛在 URL 上 這時會用另一個方法: cookie (你沒看錯是 cookie) 這種方法裡雖然還是需要用到 cookie 但是存的東西就不是使用者資料而是 session id 如果你有機會/能夠看到瀏覽器的 cookie 列表的話 你會發現不少網站都會有一或兩個 cookie 裡面是一長串字 也許是像 1a2b3c4d5e6f7a8b9c0d1e2f3a4b5c6d 這樣整齊的十六進位數字 也許是像 prOuyWlkt3ymszEyOGJpdA== 這樣經過 base64 編碼的字元 這都是這些網站的 session id 這樣只需要在使用者瀏覽器裡記一小段資料就能達到 session 的效果 -- いああオレたちには見えてるモノがあるbきっと誰にも奪われないモノがあるはずさ開口一番一虚一実跳梁跋扈形影相弔yL羊頭狗肉東奔西走国士無双南柯之夢 歪も ぶ  意味がないと思えるコトがあるPきっとでも意図はそこに必ずある んの く 依依恋恋空前絶後疾風怒濤有無相生H急転直下物情騷然愚者一得相思相愛 だが ろ 無意味じゃない6あの意図 恋た で 有為転変死生有命蒼天已死黄天當立 !!6五里霧中解散宣言千錯万綜則天去私 のり -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.28.91

12/23 14:36, , 1F
非常詳細且完整 感謝
12/23 14:36, 1F
文章代碼(AID): #1EyyYqag (Web_Design)
討論串 (同標題文章)
文章代碼(AID): #1EyyYqag (Web_Design)