首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在vue js中导入基于web的html脚本中的js文件时出现CORS错误

在vue js中导入基于web的html脚本中的js文件时出现CORS错误
EN

Stack Overflow用户
提问于 2019-10-19 19:29:58
回答 2查看 1.8K关注 0票数 1

我正在尝试从vue实例内置方法内部调用api

但它向我展示了一些错误

我正处于训练阶段,这对我来说是全新的

错误: CORS策略已阻止从源'null‘访问'file:///home/wohlig/Documents/Projects/Training/Rough/Vue/apicalling/app.js’处的脚本:仅以下协议方案支持跨域请求: http、data、chrome、chrome-extension、https。

获取file:///home/wohlig/Documents/Projects/Training/Rough/Vue/apicalling/app.js net::ERR_FAILED

我正在尝试从我的数据库中检索数据

代码语言:javascript
复制
app.html
<html>
    <head>
        <script src = "https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
    </head>
    <body>
        <div>

        </div>
        <script type="module">
         import { nav } from './app.js'

        var vm = new Vue({
                data: {
                    datas:"gsdgsdg"
                },
                created(){
                    nav.getOneId(function (err, data){
                        if(data){
                            console.log("afasfsafasfasf+++++++++="+data)
                        }
                    })
                    console.log("dfafasdfadf")
                }
                })
        </script>
    </body>
</html>



app.js

import axios from "axios";

var adminUrl = "http://localhost:3000/";

export default {
  getOneId: callback => {
    return axios
      .get(adminUrl + "movie/getOneId/5d9d736963a1f027693e7fae", {})
      .then(data => {
        callback(null, data);
      })
      .catch(err => {
        callback(err);
      });
  }
}
EN

回答 2

Stack Overflow用户

发布于 2019-10-19 20:53:06

发生此错误的原因是您直接在浏览器中打开app.html。例如,当您双击并打开它时。

相反,您必须在项目所在的目录中启动一个本地服务器。

如果您使用的是项目模板,则它很可能已经具有已配置的npm start命令。在本例中,使用该命令启动开发服务器。否则,您可以转到app.html所在的文件夹并运行npx live-server -这将服务于当前目录。我假设您已经安装了nodejs (node -v检查),否则该命令将不会运行

票数 3
EN

Stack Overflow用户

发布于 2019-10-19 20:10:54

尝试在package.json“proxy”中使用这一行:"http://192.165.1.220:28080",

此主机和端口将位于walmart的何处,并使用npm安装“http-proxy-”,然后重试。

CORS:解释跨来源资源共享(CORS)是一种机制,它使用额外的HTTP标头来告诉浏览器给予在一个来源运行的web应用程序访问来自不同来源的选定资源的权限。当web应用程序请求的资源与其own.Means具有不同的来源(域、协议或端口)时,web应用程序将执行跨域HTTP请求。您的本地主机正在尝试连接其他域,因此为了安全起见,需要启用它以连接到它们的IP。

更清晰、更宽泛的观点请访问:https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS

此外,您应该使用http协议,而不是file:///home/wohlig/Documents/Projects/Training/Rough/Vue/apicalling/app.js可以通过此https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS/Errors/CORSRequestNotHttp

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58463219

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档