Re: [問題] 想問一下在ruby下 用 session

看板Ruby作者 (mimi)時間17年前 (2007/10/18 22:57), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串3/3 (看更多)
我來回答我自己好了 我用一些空閒的時間 終於把問題給解決了 我把重點給寫出來~ 給日後有人需要自己寫簡單的 CGI 做個參考 第一個重點就是 : 如果有用到 erb 千萬要記得在輸出 rhtml 前 記得先送出 header erb只會送出兩三行不重要的header 尤其是有用到 session ex. contentype = "Content-Type: text/html; charset=UTF-8\r\n" setcookie = "Set-Cookie: rubycgi=#{@sess.session_id}; path=/cgi-bin\r\n" header= contentype + setcookie print header 其中如果你的程式有用到 session 或是 cookie 千萬要記得要送出 "Set-Cookie: xxx" 不然 browser就不會收到 Cookie 這個部份就是有用到 erb 時要注意的 如果是用 cgi.out 的話 ruby 會自動幫你處理?(應該是..根據我的試驗) 除非妳需要變動送出的資料... 第二個部份就是在 new 出session 時要注意程式會不理 browser 送出的 cookies 而一直建立起新的 session 所以在 new 時 第一次建立 session時可以這樣 ex. cgi = CGI.new sess = CGI::Session.new(cgi, "new_seesion" => true, "session_id" => "1234", "session_key" => "rubycgi", "prefix" => "ruby") 建立好 session 後 之後你要利用到 browser 送來的 cookies 來檢查是否已建立好 session 時 只需要 ex. cgi = CGI.new sess = CGI::Session.new(cgi, "session_key" => "rubycgi", "prefix" => "ruby") 這樣就不會一直重覆建立新的 session 就這兩個東西害我卡好久~.... 網路上可以參考的東西又很少~ 所以分享一下心得給大家 不要像我笨笨的弄了很久 所以我就騙了一些p幣.. -- ▁▁ ▕寧寧▏ ▕肥肥▏  ̄ ̄ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 125.231.114.78
文章代碼(AID): #175tHE7h (Ruby)
文章代碼(AID): #175tHE7h (Ruby)