小编myN*_*unt的帖子

成功购买后如何阻止 Stripe 覆盖客户端的会话 cookie

环境: Express、express-session、Stripe

在下面的简化示例中,当用户请求主页时,express-session会为用户分配一个会话 cookie。刷新页面会保留与访问成功或失败路由相同的会话 ID。单击升级按钮会将客户端带到 Stripe 购物车屏幕,该屏幕也保留相同的会话 ID。然而,一旦用户进入 Stripe 购物车并成功购买,他就会被转发到成功路线,并且会话 ID 会被 Stripe 覆盖。在完整版本中,这是一个问题,因为用户将登录,这会导致用户在成功购买后自动注销。我不确定为什么会发生这种情况或如何阻止它。

应用程序.js

const bodyParser = require('body-parser');
require('dotenv').config();
const express = require('express');
const session = require('express-session');
const stripe = require('stripe')(process.env.STRIPE_SECRET_KEY);

const app = express();

app.set('view engine', 'ejs');

app.use(express.static('views'));

app.use(
    session({
        maxAge: 24 * 60 * 60 * 1000,
        name: 'randomName',
        resave: false,
        saveUninitialized: true,
        secret: 'randomSecret',
        cookie: {
            sameSite: true,
            secure: false
        } 
    })
);

app.get('/', function(req, res) {

    req.session.userValues = true;
    console.log(req.session);

    res.render('index', { stripePublicKey: …
Run Code Online (Sandbox Code Playgroud)

session-variables session-cookies node.js stripe-payments express-session

5
推荐指数
1
解决办法
1732
查看次数

本地 Git 存储库可以具有与 Github 上存储的版本不同的文件夹名称吗?

使用 Git 时,是否可以在桌面上使用与 Github 上的项目名称不同的文件夹名称?

例如有没有办法实现这一点?

GitHub: /codeWars-someTest

桌面: /someTest

就我而言,在桌面上,存储库已存在于 codeWars 文件夹中。 /codeWars/sometest

git github

4
推荐指数
1
解决办法
4151
查看次数