在 VS Code 上使用 Chrome Web 时出现“XMLHttpRequest”错误

Posted

技术标签:

【中文标题】在 VS Code 上使用 Chrome Web 时出现“XMLHttpRequest”错误【英文标题】:Getting "XMLHttpRequest" error while using Chrome Web on VS Code 【发布时间】:2022-01-21 18:35:08 【问题描述】:

当我使用 VS Code 在 Chrome Web 上启动我的应用程序并尝试向后端发送 http 请求时,它给了我 XMLHttpRequest error 并且不起作用。

当我在 android Emulator 上启动该应用时,它可以工作。我还尝试在我的后端应用程序中添加 Allow-All-Origins 和其他 CORS 选项,但仍然出现相同的错误。

我也尝试在 Chrome Web 上停用 CORS,但也没有用。我不知道是否有必要添加我尝试过但没有得到答案的解决方案,但我也想知道这是一个 Bug 还是 Flutter 或 Chrome web 的问题?

【问题讨论】:

【参考方案1】:

我更改了以下代码行:

final url = Uri.parse('http://10.0.2.2:8000/api/$urlSegment');

如下:

final url = Uri.parse('http://127.0.0.1:8000/api/$urlSegment');

问题似乎解决了,但我不确定它是否是正确的解决方案?

【讨论】:

【参考方案2】:

您需要在后端文件的头部添加代码。

添加或更改标题代码

“访问控制允许来源”:“*”,

"Access-Control-Allow-Methods": "POST, GET, OPTIONS, PUT, DELETE, HEAD",

【讨论】:

我使用 Deno 后端,但我认为它没有这样的标头。它使用oakcors 并尝试过,但没有奏效。最后,我将请求地址更改为下面的答案,并且成功了! 好。我也遇到了与 php 作为后端相同的问题,我使用“Access-Control-Allow-Origin”解决了。

以上是关于在 VS Code 上使用 Chrome Web 时出现“XMLHttpRequest”错误的主要内容,如果未能解决你的问题,请参考以下文章

VS Code + Chrome 调试 + nrwl 架构

Visual Studio Code-使用Chrome Debugging for VS Code调试JS

VS Code + Debugger for Chrome:在现有 Chrome 实例中打开选项卡,而不是新窗口?

在 VS Code 中启动没有网络安全的 Chrome

debug-vuejs-from-vs-code:在 chrome 中调试 vueJS 应用程序时未绑定断点

json VS Code Chrome调试器 - 如何配置