在nodejs中创建API Key并验证跨域

Posted

技术标签:

【中文标题】在nodejs中创建API Key并验证跨域【英文标题】:Create API Key and verify cross-domain in nodejs 【发布时间】:2017-05-28 05:04:13 【问题描述】:

我是 nodejs 的新手,我正在尝试创建和 REST_API 服务器,事情是:

1- 我目前正在使用护照进行用户注册和登录

我有点困惑的是:

当用户访问他们的仪表板时,我希望有一个按钮,上面写着(生成您的 API 密钥)。然后用户将在对我的 REST_API 的标头请求中使用此密钥。那是我不明白的地方,我应该使用什么来获得上述流程?

我尝试使用 JWT 生成令牌,但这只是在用户登录时创建令牌,我不希望用户每次都必须登录。

这是我的登录路径:

app.post('/api/login', passport.authenticate('local-login'), function (req, res) 
    res.json( message: req.authInfo, user_id: req.user.id, user_email: req.user.local.email, loggedin: true );
);

如果还有什么需要我提供的,请问好吗?

谢谢!

【问题讨论】:

【参考方案1】:

当用户访问他们的仪表板时...

向端点发出 post 请求,传递用户 ID,这样您就可以知道哪个用户生成了它的密钥。生成密钥并返回它。您可以将其存储在缓存或会话中以在会话期间使用

我不希望用户超时登录...

如果您不想让您的用户每次都登录。您可以存储用户并传入浏览器缓存(加密通行证)。因此,当用户前往应用程序时,您必须检查用户和通行证是否在缓存中。如果是,请登录用户。

【讨论】:

以上是关于在nodejs中创建API Key并验证跨域的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 nodejs 在 mailchimp 订阅者列表中创建标签?

本地 Nodejs 服务器不允许跨域请求

通过NodeJS脚本迭代数组中的项目

在 Lumen 中创建多个身份验证提供程序

如何在 Nodejs 中创建服务器?

如何使用 nodejs 在用户主目录中创建目录?