2011-10-27 12 views
3

私は、クッキーを送信していないことを除いて、正しく動作するサブドメインを介してjQuery ajaxコールを使用しています。これを達成する方法はありますか?jquery ajaxコールがクッキーを送信しない

+0

どのようにのようなあなたのAJAX呼び出しを見て...そのハード推測し – Rafay

+0

$アヤックス({ \t \t \tタイプ: 'POST'、 \t \t \t URL:「のhttp:// api.example.com」 \t \t \tデータ:{/ *ここではいくつかのデータ* /}、 \t \t \tデータ型: 'JSON' \t \t})。 このようなものは – LordZardeck

答えて

2

これは私に予想される動作のようです。 Cookieはドメイン単位で(サブドメインを含む)しかし、私はあなたがこのようなもので、それを強制することができると思います。

$.ajax({ 
    headers: {'Cookie' : document.cookie }, 
    url: "sub.domain.com", 
    success: function(){ ... 

これは完全にテストされていないので、それが動作するかどうか私に知らせ;)

EDIT:実際にそれがすべてで、そのことはできないように見えます。 ..ここを見てください:How do I SET a Cookie (header) with XMLHttpRequest in JavaScript?あなたはSOLかもしれない

しかし、それらはすべてのあなたのサブドメインで有効であるようにPHPでクッキーを設定することができると思います。このようなもの:

ini_set('session.cookie_domain', '.example.com') 

「。ドメインの前には、example.comとすべてのサブドメインのCookieが設定されます。

あなたのアプリで上記を使用してsession.cookie_domainを設定するか、php.iniで設定することができます。

あなたはCORS対応ブラウザを使用してwithCredentials属性を設定する場合は、上記のhere

+0

です。 :p – LordZardeck

+0

実際、それはまったく不可能なようです...見てください:http://stackoverflow.com/questions/2320110/how-do-i-set-a-cookie-header-with-xmlhttprequest-in- javascriptあなたはSOL – Matthew

+0

oOかもしれないし、どのようにFacebookはそれを行うのですか? – LordZardeck

0

べきではありません。この作品から盗まれましたか?

HTTP Cookies and Ajax requests over HTTPSを参照してください

+0

これは、AJAXリクエストが完全に異なるドメインへの要求で、サブドメインからサブドメインへの要求では必要ありません。 –

関連する問題