您如何从本地主机发送跨源请求?

时间:2019-04-24 00:04:16

标签: javascript ajax cors xmlhttprequest

我的前端在localhost:8080上运行,服务器在localhost:3000上运行。我想从我的前端向服务器发送请求。当我这样做时,出现以下错误:

  

从以下位置访问“ localhost:3000 / create-sharable-url”处的XMLHttpRequest   原产地“ http://localhost:8080”已被CORS政策禁止:跨   仅协议方案支持原始请求:http,数据,   chrome,chrome扩展名,https。

我正在使用http协议,为什么会出现此错误?

我正在尝试从localhost协议发出请求,因此该错误使我认为这是不可能的。但是另一方面,在开发模式下从客户端向服务器发送请求似乎是一个非常常见的要求。

四处搜寻似乎使我指向了在响应中设置CORS标头的方向。我已经在服务器上设置了标头(使用cors npm软件包),但我认为无论如何我都会去做。不过,这对我没有用。 Access-Control-Allow-Origin: * Chrome扩展程序无法正常运行,也无法在运行带有禁用网络安全标志的Chrome时运行。

客户端JS

createSharableEquityCalculatorURL: function (storeState) {
  let data = this._constructEquityCalculatorData(storeState);

  return Vue.axios.post(`${process.env.BASE_API_URL}/create-sharable-url`, data);
},

1 个答案:

答案 0 :(得分:1)

它说“在'localhost:3000 / create-sharable-url处访问XMLHttpRequest”的事实使我认为在您的JS中您忘记了将http://放在目标URL的开头。

将其完整写在您的代码中,即http://localhost:3000/create-sharable-url