鍍金池/ 問(wèn)答/PHP  C  Linux  HTML/ ajax跨域登錄,php后端如何處理

ajax跨域登錄,php后端如何處理

前端地址:
http://a1.domain.com/login.html

后端地址:
http://b2.domain.com/login.php

前端登錄時(shí)往后端發(fā)送ajax請(qǐng)求驗(yàn)證,請(qǐng)求返回用戶名密碼正確,然后跳轉(zhuǎn)到home界面,可是home界面請(qǐng)求后端數(shù)據(jù)時(shí),由于跨域名的原因后端無(wú)法通過(guò)cookie獲取到登錄狀態(tài),依舊返回到登錄界面。

然后我在后端php登錄成功時(shí)設(shè)置了cookie跨域,可是還不行,代碼如下:

//如下兩種方式都不行
setcookie("uid", "123", 0, "/", "a1.domain.com", 0);
setcookie("uid", "123", 0, "/", "domain.com", 0);
回答
編輯回答
命多硬
  1. 首先,domain.com 的方式肯定是可行的。 如果不可行,錯(cuò)誤在代碼,而不在方式。
  2. 不知到home界面是否在 a1.domain.com 下面。在的話,理論上是不會(huì)有問(wèn)題的。

最后:
處理這種的方式就是打開(kāi)瀏覽器。
看一下 js是否真正的保存了cookie。并且 跳轉(zhuǎn)到home頁(yè)后的請(qǐng)求,是否攜帶了該cookie。
如果攜帶了,就去后端找問(wèn)題~

2018年2月28日 15:07
編輯回答
櫻花霓

用token吧

2018年3月30日 03:00
編輯回答
遺莣
setcookie("uid", "123", 0, "/", ".domain.com", 0);

域名前面有個(gè).

2018年7月12日 22:11