'Access-Control-Allow-Origin' header 不存在于具有 API 的请求资源和同一端口上的网站

No 'Access-Control-Allow-Origin' header is present on the requested resource with API and website on same port

我的站点和 api 托管在服务器 (:80) 的同一端口上。 我想从我的网站视图向我的 api.

发送请求

这是我的要求:(我用 reactJS 在 componentWillMount 中运行它)

axios.request({
         url: ROOT_URL + '/user/comfirmation/' + tmp[1],
         method: 'get',
         data: null,
         headers: {
             'Content-Type': 'application/json'
         }
     })
     .then((response) => {

         if (response.data.Type == "EmailUpdated") {
             this.setState({
                 actualState: 'success',
                 type: response.data.Type,
                 email: response.data.Email
             })
         } else {
             this.setState({
                 actualState: 'success',
                 type: response.data.Type
             })
         }

     }).catch((error) => {
             this.setState({
                 actualState: 'error'
             })
     })

它在本地完美运行,但是当我的网站部署时我得到这个错误:

但方法是允许的:

我试过 fetch 我没有这个错误,但我真的想用 axios 解决这个问题,因为我更喜欢它的实现。有人可以帮助我吗?

spottedways.comwww.spottedways.com不是同一个来源。一个前面有一个www.完整 主机名必须匹配,而不仅仅是二级域。

  • 停止使用绝对网址。使用相对 URL。
  • 从您的两个主机名(www 或非 www)中选择一个作为规范主机名。设置另一个主机名以发出 301 重定向到规范主机名。