2016-04-17 16 views
1

私はExtjs-6アプリケーションを開発しています。私のサーバーアプリケーションはRestFulです。私はAjaxにログインする必要があります。私は次のようにAjaxリクエストを送信します。に従うよう要求のExtjs AjaxリクエストでCookieが正しく設定されていません

Ext.Ajax.request({ 

    url: 'localhost:8084/Calk/j_spring_security_check', 
    params: {j_username: 'ali', j_password: '123456', 
    method: 'POST', 
    headers: { 
     'Content-Type': 'application/x-www-form-urlencoded' 
    }, 
    success: ..., 
    faiulure: ..., 
}); 

結果は次のとおりです。 enter image description here

クライアント後200 OKを受け取り、それは次のように店舗をお読みください。

Ext.define('Calk.store.Calk', { 
    extend: '...', 
    model: '...', 
    proxy: { 
     type: 'ajax', 
     url: 'localhost:8084/Calk/calk/all', 
     withCredentials: true, 
     useDefaultXhrHeader: false, 
     reader: ..., 
     method: 'POST' 
});  

結果は以下の通りですenter image description here

なぜクッキーが正しく設定されていませんどうすれば修正できますか?だから、AJAXリクエストのすべてがクッキーを送信します

Ext.Ajax.on("beforerequest",function(con){ 
    con.setUseDefaultXhrHeader(false); 
    con.setWithCredentials(true); 
} 

+0

クッキーは 'localhost/Calk /'パスに制限されています。あなたは 'localhost/Workspace/Calk /' urlからajax呼び出しを行っていますが、元のクッキーはここでは見えません。バックエンドでCookieパスに制限を適用しないようにします。 – serg

+0

私はバックエンドでjavaを使用しています。私は[ここ](http://stackoverflow.com/questions/36594371)で質問して、2日前に100バウンティを開始します。あなたが貢献すれば幸せになれます。 –

答えて

1

は、内線の設定に以下の行を設定します。

関連する問題