在 Vue 客户端和服务器应用程序中如何消除对 CORS 的需要?

Posted

技术标签:

【中文标题】在 Vue 客户端和服务器应用程序中如何消除对 CORS 的需要?【英文标题】:In Vue client and server application how to eliminate the need for CORS? 【发布时间】:2018-09-02 20:25:19 【问题描述】:

我在这里关注基于 MEVN 堆栈的教程:

MEVN Stack Tutorial

它是一个博客文章应用程序,客户端是基于 Vue 的 SPA(我们称之为应用程序 A),后端是基于 express 的,它通过基于 JSON Rest 的 API 提供 Mongo 数据(我们称之为应用程序 B。但是,它使用 cors 包B 允许跨源请求,这是一个安全风险,允许第三方直接调用应用 B API。

如何消除应用 B 中对 CORS 的需求?我正在寻找正确的方法。一个是应用程序 A 浏览器 javascript 不会调用应用程序 B,而是通过在应用程序 A 中添加 express 包来调用应用程序 A 后端,该程序包反过来对应用程序 B 进行相同的调用(在检查请求参数的有效性之后)。但在这种情况下,基于 express 的 app.js 存在于 app A 的 Vue 目录结构中?

我在应用 A 中为 http 使用 axios,我不确定如何使用它来解决上述问题。

【问题讨论】:

【参考方案1】:

为什么您认为 CORS 存在安全风险? CORS 常用于各种应用程序,如果使用正确,不会有安全风险。您可以选择 CORS 允许的来源和方法。

消除 CORS 的唯一合理方法是将两个应用程序托管在同一个域上。这样一来,请求不再是跨域的,因为应用程序共享它们的来源。

【讨论】:

以上是关于在 Vue 客户端和服务器应用程序中如何消除对 CORS 的需要?的主要内容,如果未能解决你的问题,请参考以下文章

如何消除 php5 Strict 标准错误?

vue和c语言可以交互吗

Vue.js 如何使用 Socket.IO?

matlab 如何消除信号的高频分量

C#中三个kinect 2设置之间的通信

如何在目标 c 中增加声音的音量并消除背景噪音