2016-08-01 13 views
0

ちょっと私はポストリクエストでセッションを設定する際に問題があります。たとえば、コアラティブに働くリクエストを取得します。私はポスト要求の後にリダイレクトしようとしましたが、これもうまくいきません。私のコードのセクションがあります。Silex - ポストリクエストでセッションを使用できません

が動作していません:

$app->post(
    '/localauth', 
    'UserController::serviceLoginAuth' 
) 
->after(
    function() { 
     session_name('auth') 
     session_start(); 
    } 
); 

serviceLoginAuthにリダイレクトするだけでなく動作:

// redirect to '/authsuccess'  
$app->post('/localauth', 'UserController::serviceLoginAuth'); 
$app->get('/authsuccess', 'UserController::serviceLoginAuthSuccess'); 

私はHTTPを使用角度コードを投稿する:助けを

 $http({ 
     url: apiConst.apiurl+'/localauth', 
     method: "POST", 
     data: $.param({ 
     login: user.login, 
     pass:user.pass 
     }), 
     headers: { 
     'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8' 
     } 
    }).then(function(response){ 
     console.log(response); 
     $cookies.put('csrftoken',response.data.token); 
    }).catch(function(){ 
     console.log(err); 
    }); 

感謝を!

+0

エラーが発生しましたか? – Andy

+0

このヘッダーがないと、httpコード405とオプションのエラーが表示されます。しかし、このヘッダーはこのエラーを修正しますが、投稿後にセッションを送信できません。 –

答えて

0

なぜサイレックスを使用しないでくださいSessionServiceProvider

->beforeの代わりに->afterを使用してミドルウェアでsession_startを呼び出している可能性があります。

+0

はい、私は以前は効果がないように試しました。 tryed SessionServiceProviderと同じです。 $ app-> get()は完全に動作しますが、post()にはいくつかの問題があります。 –

+0

$ app-> get( '/ authsuccess')から$ app-> post( '/ localauth')にリダイレクトしようとしていますか? – Slico

+0

いいえ私は$ app-> post( 'localauth')から$ app-> get( 'authsuccess')にリダイレクトしようとしています。私がstricte 'authsuccess'に行くときだけ、セッションが登録されます。 –

関連する問題