问题:Node Express无法通过发布请求获取会话值

时间:2018-05-07 13:30:22

标签: node.js express session shopify

我正在node.js开发Shopify应用程序。我正在使用不同的Shopify webhooks进行不同的操作。类似地,对于特定场景,我需要在从Shopify API获得响应时使用会话值。所以在这种情况下,会话不适合我。请看下面的代码。

我在index.js中的代码

const express = require('express');
const app = express();
var session = require('express-session');
app.set('trust proxy', 1); // trust first proxy  
app.use(session({
    secret: 'keyboard cat',
    resave: false,
    saveUninitialized: true,
    cookie: {
        httpOnly: false,
        secure: true,
        maxAge: 60000
    }
}));

//Set the session  
app.get('/check_timewindow_orders', function (req, res, next) {
    req.session.delvy_date = query.date_select;
});

app.use(function (req, res, next) {
    res.locals.delvy_date = req.session.delvy_date;
    next();
});

我在app.get和app.post中获取会话值。

app.get('/order_created_get', function (req, res) {  
console.log(req.cookies.delDate);   
    // It display the value store in session.  
});

但是当我从shopify Order Create Webhook API获得帖子时,我无法获得会话值。

app.post('/order_created', function (req, res) {  
    console.log(req.cookies.delDate); // It display Null.  
});

1 个答案:

答案 0 :(得分:0)

您实际上并未使用会话。 您需要将其添加为中间件:

password