看板 Web_Design 關於我們 聯絡資訊
大家好 最近做了一個會員註冊及登入的網頁 在會員登入後做一個跳轉頁面的動作 用window.location.href實作 而跳過去時session就不見了 所以抓不到使用者的相關資料 請問是哪裡出問題 還有我登入完馬上按重整登入的資料也不見了 我在登入頁面跟轉跳頁面都在同網域 而我後台給的api網址是不同網域做存取 但是有用cors解決了 session不見會是ajax跨網域的問題嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 223.140.16.177 ※ 文章網址: https://www.ptt.cc/bbs/Web_Design/M.1487647353.A.165.html
ssccg: session通常是用cookie,只能在同個domain/subdomain存取 02/21 11:37
ssccg: 跨網域必須另外傳session id、共用session service/storage 02/21 11:41
ruichin: 所以用cors讓我成功跨網址實作登入後的session就是一定會 02/21 11:41
ruichin: 不見? 02/21 11:42
ssccg: 如果你的實作方式是 A網域登入 → 單純轉址到B網域 02/21 11:53
ssccg: B網域沒做其他處理的話,那對B網域就是沒有session的狀態 02/21 11:54
我表達的不清楚,我目前實作的方式是登入前跟登入後都是同個網域 但在成功登入後的網域後面會加上/member/index.html (跳過來session就不見了) 而我剛試了一下把跳轉註解掉不做跳轉而按重整的話session也不見 我需要在前端做什麼處理嗎? 還是要後端去做? 不好意思剛做動態網頁不久,有很多的問題 非常感謝 ※ 編輯: ruichin (223.140.16.177), 02/21/2017 12:03:53
xdraculax: 正常不會不見,那裡有錯還要看你的程式 02/21 12:49
ssccg: 錯在哪要看程式,你可以先確認登入後的request都有cookie? 02/21 13:00
ruichin: 登入後我看network http://imgur.com/a/KaCP2 02/21 13:39
crossdunk: 用什麼語言 有開啟嗎 02/21 16:10
ruichin: 前端是用jQuery,後端是外包的給api網址,不知道他用什麼 02/21 16:16
cf1064: 你的session應該是在api的那邊,您自己也要另存一筆sessio 02/21 19:07
cf1064: n 02/21 19:07
ruichin: 請問前端要怎麼取得session,今天Google都是說修改後端 02/21 21:18
ruichin: 的程式,非常感謝 02/21 21:18
crossdunk: 你的前端沒辦法抓到他後端的session 02/21 23:49
crossdunk: 因為你們是不同網域 02/21 23:50
crossdunk: 用你前端自己的方式去存SESSION在抓吧 02/21 23:50
ruichin: 今天找前端的都只有asp.net的寫法,找不到我要的 02/22 00:57
cf1064: 如果你只能前端語言,應該要改COOKIE而不是SESSION,用AJA 02/22 00:59
cf1064: X對API發送登入訊息,API回傳登入成功或失敗與使用者資料 02/22 00:59
cf1064: ,成功就寫COOKIE並跳轉頁面,然後要顯示資料的頁面去抓CO 02/22 00:59
cf1064: OKIE資料 02/22 00:59
ruichin: 可能是關鍵字下錯,現在完全沒有方向… 02/22 01:01
ruichin: 謝謝,我明天在以Cookie這個方向去試看看 02/22 01:08
xdraculax: 參考FB api,登入後寫個 token 在cookie ,之後的頁面 02/22 09:34
xdraculax: 上用 token 跟 api 要資料 02/22 09:34
xdraculax: 後端 api 他們沒有給文件嗎,這應該要問幫你們作後端 02/22 09:36
xdraculax: 的 02/22 09:36
ruichin: 感謝,後端只給我規定跟流程,文件這個我在問看看 02/22 10:41
ruichin: 感謝以上各位的幫忙給了我很多方向,終於成功了 02/22 17:58