下面是我MERN项目的文件结构。
|-Project
|- client
|- server
客户端文件夹包含反应服务器。客户端在<code>localhost.Client上运行。comServer文件夹包含节点的代码。js服务器。服务器运行于localhost.Server.com
每当我从客户端向服务器发出请求时。如何缓解 csrf 攻击?确保向服务器发出的请求来自客户端,而不是来自任何其他源。
您的问题可能会在React前端和REST API、CSRF中讨论。
有一篇关于CSRF和反措施的优秀文章(考虑到Angular,但它仍然是一个问题)。TL/DR:
Access-Control-Allo-Origin
-头XSRF-Token
保存为安全cookie(不幸的是,这需要exta请求-大多数时候)。只有您域中的代码才能访问此值。X-XSRF-TOKEN
标头值与您的请求一起发送以授权请求要确保只有您的应用程序可以使用服务器api,您可以在CORS/OPTIONS响应标头中设置Access-Control-Allo-Origin
值。
在开发过程中,它通常设置为访问控制允许来源:*
对于生产,请指定域/服务器名称访问控制允许来源:localhost.client.com
为了防止欺骗来源,您可以使用(Anti-)CSRF-Tokens。这是附加到您的请求的额外值,用于验证您的请求。此值可以/应该保存在安全cookie中。crunf或JSON Web令牌可能与您相关。在您的情况下,CSRF-Tokens可能需要对api的额外请求来查询令牌。
如何在MongoDB中保存多个段落我有一个文本区域,允许输入多个段落,但不在数据库中保存行空间 例如,我希望提交的数据如下所示 我的同僚们都是精英。我的同僚们都是精英。Nobis,sequi?洛雷姆·伊普苏姆·多洛。 我的同僚们都是精英。我的同僚们都是精英。Nobis,sequi? 我的同僚们都是精英。我的同僚们都是精英。Nobis,sequi?同侧阴唇 但它是这样节省的 Lorem ipsum
我正在尝试从数据库中提取数据。我从回应中得到的都是这样的: 我需要帮助如何在前端和后端提出请求: 以下是ReactJS方面: 以下是请求的服务器端: 以下是ProductService: 附注:产品在MongoDB Compass中创建时没有错误:
我来自C/C++背景,在这里一个进程内存分为: null 我想把我的注意力集中在这一点上,当我阅读JVM中的堆和堆栈时,我们是在谈论堆栈和堆的概念吗?并且整个JVM的实际内存驻留在堆上(这里指的是堆的C++概念)?
我正在按照本指南部署MERN stack app,使用heroku和github页面-https://github.com/juliojgarciaperez/deploy-mern Q1.我是否需要创建两个不同的存储库,一个用于后端,一个用于前端来连接到Heroku?(T.EX后端存储库到heroku管道)我最初在同一个存储库下开发了后端和前端。 Q2.我设法获得了指南中的步骤:3,并按照前面提
我正在学习MERN stack,我已经完成了这个项目,但是我有用户数据的问题。当用户创建帐户时,他们可以在通过身份验证时添加项目。问题是这些相同的项目出现在另一个用户的仪表板上。我希望用户只看到他们添加的项目。
我正在尝试将Google Maps添加到我的MERN Stack应用程序中。根据一些消息来源,我发现在create-react-app中添加.env文件并不能解决隐藏API_Keys(https://create-react-app.dev/docs/adding-custom-environment-variables/)的目的。如何将API_KEYS存储在后端(node.js)中并从React