node.js - ReactJs 前端和 Passport NodeJs 后端

标签 node.js reactjs passport-local

我正在构建一个使用 NodeJS、Express 和 Passport 的 API RESTful 项目。对于此应用程序的前端,我想使用 ReactJS

我可以使用 create-app-react 为我的前端创建一个单独的项目并获取我的 API,同时保留 Passport 的优点吗?或者我应该在我的请求中始终发送用户的信息?或者在 API 的同一台服务器上为我的前端提供服务?

最佳答案

是的,您可以在 2 个不同的端口上拥有一个客户端和一个服务器,并保留 Passport 的优势。

但是为此,当您获取时,API 使用凭据:'include'

因为,默认情况下,fetch不会从服务器发送或接收任何 cookie,如果站点依赖于维护用户 session ,则会导致未经身份验证的请求(要发送 cookie,必须设置凭据 init 选项)。

示例:

fetch('https://example.com', {
  credentials: 'include'  
})
.then( res => {
  // Some stuff...
})
.catch(err => {
  console.log(err);
});

关于node.js - ReactJs 前端和 Passport NodeJs 后端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47182656/

相关文章:

javascript - Node.js Bluebird Promise 提示 "Converting circular structure to JSON"

node.js - 从 node.js 应用程序增加持久计数器的最快方法?

angularjs - 禁用 cookie 时的 Passport session 管理

javascript - Passport : Allow sign up with name and email address?(本地策略)

node.js - 如何在 Node js应用程序的redis中使用hset基于子键删除

javascript - Paypal 中的 RESOURCE_NOT_FOUND

reactjs - 在 React 中将动态值传递给 HOC

javascript - Node.js 使用 Express 和 Mongoose 设置 Passport 时出现问题

javascript - 在 React 中提交后将结果显示在 div 中

javascript - 为什么 onClick 函数调用只传递一个字符? (ReactJs)