2017-09-24 15 views
-1

私のプロジェクトには、anglejsフロントエンドとnodejsバックエンドがあります。角度コードでは、$クッキーオブジェクトを使用してクッキーを設定していて、ブラウザの左上にある「ページ情報を表示」でクッキーを見つけることができます。しかし、私がバックエンドにリクエストを送信するとき、私はそのクッキーを読むことができません。私はserver.jsにこれらの行を持っています:const cookieParser = require('cookie-parser');とそれ以降のapp.use(cookieParser());。クッキーオブジェクトが空であるので、(私は「{}」コンソールに取得しています)、クッキーパーサーを使用してクッキーをnodejsに読み取れません

//custom passport jwt extraction function 
var cookieExtractor = function (req) { 

    console.log(req.cookies); //logs a '{}' 

    var token = null; 
    if(req && req.cookies) 
    token = req.cookies['jwt']; 
    return token; 
}; 

をそしてここで問題が発生します。 そして、これをやろうとしてイム。私はここで間違って何をしていますか?

EDIT:

私は(英語以外の言語のために残念)私のアプリで設定されたブラウザのクッキーのSSを添付しています:あなたが設定したい場合は

cookies

+0

あなたは速達を使用していますか? – lilezek

+0

はい、私はエクスプレスを使用します – dudinii

答えて

0

は次のように試してみてください文字列を使用したputメソッドとしてのクッキー。

オブジェクトを使用するputObjectメソッドとしてCookieを設定する必要があります。

Angularjs

angular.module('cookiesExample', ['ngCookies']) 
.controller('ExampleController', ['$cookies', function($cookies) { 
    var obj = {}; 
    obj.name = "Hello world"; 
    $cookies.putObject('myCookie', obj); 
}]); 

nodejs

var cookieParser = require('cookie-parser'); 
module.exports = function(app) { 
    app.use(cookieParser()); 
} 

console.log('cookie', req.cookies.myCookie); 
+0

私はまだサーバー側のクッキーにアクセスできません。 req.cookies.myCookieは未定義です。 – dudinii

+0

クッキーがあなたのブラウザアプリケーションに存在することを確認してください – Chandru

+0

私が前に言ったように。クッキーはブラウザに存在します。私はちょうどnodejsでそれらにアクセスすることができません(私は角度thoでできます)。 "/ auth"に設定されたクッキーのパスが問題になることがありますか?私の角のアプリケーションを設定しているその道。 – dudinii

関連する問題