我想實現一些代碼,這將允許我有一個子域與另一個子域進行通信,例如, one.example.com
和two.example.com
。這兩個網站有能力共享cookie和會話數據,因爲我已將cookie設置爲使用.example.com
。交叉源請求與Kohana和JavaScript
當我通過標準HTTP訪問任一站點時,我可以轉儲會話並查看預期數據。但是,如果我通過JavaScript與jQuery $.ajax()
這樣做,轉儲的會話數據是空的。在這兩種情況下,我都使用PHP來轉儲會話數據。
我已經嘗試過以下解決方案,但沒有運氣(http://forum.kohanaframework.org/discussion/9895/problem-session-expired-with-ajax/p1)。我也在使用一個稍微更新版本的Kohana(3.3)。
我也試過,儘快爲他們到達控制器設置標題:
$this->response->headers('Access-Control-Allow-Origin', 'http://one.example.com');
$this->response->headers('Access-Control-Allow-Credentials', 'true');
$this->response->headers('Access-Control-Allow-Methods', 'POST, GET, OPTIONS');
然而,Chrome檢查仍顯示Access-Control-Allow-Origin
爲*
。