gpt4 book ai didi

javascript - Angular 2 中的 Fetch.js 提示 CORS 请求

转载 作者:行者123 更新时间:2023-12-04 02:17:59 24 4
gpt4 key购买 nike

我模糊地按照快速入门教程在与 expressjs 后端通信的应用程序中设置和使用 angular 2。我遇到了一些依赖性问题并解决了其中的大部分问题,但我被卡住了。我遇到的错误是:

Fetch API cannot load npm:@angular/platform-browser-dynamic/bundles/platform-browser-dynamic.umd.js. URL scheme must be "http" or "https" for CORS request.

我的 systemjs.config.js 文件是他们快速入门中指定的内容。

(function(global) {
System.config({
paths: {
'npm': 'node_modules/'
},

map: {
app: 'app',

// angular bundles
'@angular/core': 'npm:@angular/core/bundles/core.umd.js',
'@angular/common': 'npm:@angular/common/bundles/common.umd.js',
'@angular/compiler': 'npm:@angular/compiler/bundles/compiler.umd.js',
'@angular/platform-browser': 'npm:@angular/platform-browser/bundles/platform-browser.umd.js',
'@angular/platform-browser-dynamic': 'npm:@angular/platform-browser-dynamic/bundles/platform-browser-dynamic.umd.js',
'@angular/http': 'npm:@angular/http/bundles/http.umd.js',
'@angular/router': 'npm:@angular/router/bundles/router.umd.js',
'@angular/forms': 'npm:@angular/forms/bundles/forms.umd.js',

// other libraries
'rxjs': 'npm:rxjs',
'angular-in-memory-web-api': 'npm:angular-in-memory-web-api/bundles/in-memory-web-api.umd.js'
},

// packages tells the System loader how to load when no filename and/or no extension
packages: {
app: {
defaultExtension: 'js'
},
rxjs: {
defaultExtension: 'js'
}
}
});
})(this);

我遇到的很多问题都通过在我的 expressjs 脚本中指定正确的静态路径得到解决。让我感到困惑的是为什么只有那个文件 (platform-b​​rowser-dynamic.umd.js) 被认为是 CORS 请求。我已经确认它存在于指定的目录中,所以这不是问题所在。有没有人对此有任何见解? (大多数客户端源目前都是他们快速入门的逐字记录,如果您认为它相关,请询问,我会发布)。

最佳答案

排查 4 小时,受够了,发布问题,稍后找到答案。

打错了。显然,如果您指定了一个脚本,其路径尚未指定并且是一个未知的协议(protocol),它将尝试将其视为 CORS 请求。

我有什么:

path: {
'npm': 'node_modules/'
}

它应该是什么:

path: {
'npm:': 'node_modules/'
}

关于javascript - Angular 2 中的 Fetch.js 提示 CORS 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42045561/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com