台灣最大程式設計社群網站
線上人數
860
 
會員總數:242761
討論主題:187725
歡迎您免費加入會員
討論區列表 >> AJAX / JSON / jQuery >> 跨主機的PHP用ajax有辦法可以讀取Cookie或Session嗎
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
跨主機的PHP用ajax有辦法可以讀取Cookie或Session嗎
價值 : 50 QP  點閱數:408 回應數:3

樓主

ndb797
門外漢
0 2
54 4
發送站內信

我最近簡單的寫了一個web APP 裡面是有使用到資料庫Mysql的
也就是登入的部分是寫PHP 不過打包到Phonegap是沒辦法讀php的
不過試了一下把php檔丟到網路上從原本的 localhost/xxx.php 變成 http://120.123..../xxx.php
就可以順利執行的 不過有遇到一個問題
就是原本php中有執行到session的部分沒辦法順利讀取到
不知道是不是因為跨主機的緣故
而改使用Cookie好像也沒辦法
請問是不是有甚麼解決辦法 能讓打包後的app去讀取php連接mysql呢

搜尋相關Tags的文章: [ Ajax ] , [ Session ] , [ Cookie ] , [ PHP ] ,
本篇文章發表於2017-10-02 22:08
別忘捐VP感謝幫助你的人 新手會員瞧一瞧
1樓
回應

迷路
捐贈 VP 給 迷路 檢舉此回應
這邊可以用API的方式來操作
在登入成功將資料寫進session時,將session_id回傳給APP
然後下次APP要呼叫PHP時將session_id當成欄位值一併傳送
PHP接收後先設定session_id然後再session_start
本篇文章回覆於2017-10-03 09:29
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
回應

迷路
捐贈 VP 給 迷路 檢舉此回應
實際上這個問題應該要去行動裝置開發那邊,你寫的APP版發問
看看能否在呼叫PHP時設定header參數
我之前合作的APP工程師堅持無法設定,所以我只好再寫相關API時留下session_id欄位
讓他可以在PHP端設定
但這樣其實不是很好,一來麻煩,二來我覺得會有安全性上的隱憂
本篇文章回覆於2017-10-03 09:33
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
回應

浩瀚星空
捐贈 VP 給 浩瀚星空 檢舉此回應
一般來說,得先了解一下session的資料是存在各主機(域名)相關之內的。
在同主域名的情況下,可以透過cookie的域名設定設定共用
如 aaa.test.com bbb.test.com 本身在啟用cookie的情況下是各自分開的。
但可以將cookie的作用域設為 test.com 。這樣這兩個域名就會共用同一個cookie。
借此取得同一session id處理。

但如果是不同域的情況。如 aaa.test1.com 與 bbb.test2.com
則會因為其主域名不同,就算你將作用域設為其中一個域名。
只要主域名不同就會無效作用域。

當然~~~還是有其他方式可以來解決的。
我個人是採用db_session的處理方式。

也就是session的資料是存到資料庫內。
我只要有session id就可以正確的使用其session的資料。
不過因為我上面說的cookie在不同主域名的情況下。會各自不同
所以傳送session id的方式,就得用另外的處理。如直接url傳送。
但這樣非常的不安全。

我之前曾經使用的方式是遠程請求並重新建立對應的sessionid
後期則是cookie儲存雙作用域處理。
本篇文章回覆於2017-10-03 10:22
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.