gpt4 book ai didi

cordova - 在 iOS 上模拟 ionic 应用程序时出现 CORS 问题

转载 作者:行者123 更新时间:2023-12-02 16:09:12 25 4
gpt4 key购买 nike

我最近更新了 ionic-cli,现在尝试使用命令 ionic cordova emulate ios 来模拟 ionic 应用程序。

但是,我在每个 api 请求中都会收到 CORS 错误

Origin http://localhost:8080 is not allowed by Access-Control-Allow-Origin.

我发现ionic docs说一下上面的命令

Like running cordova emulate directly, but also watches for changes in web assets and provides live-reload functionality with the --livereload option.

看起来该命令还启动了一个服务器,这可以解释为什么源是 localhost 而不是 file://

但是,我尝试使用 cordova emulate ios 进行模拟,或使用 ionic cordova build ios 构建应用程序并使用模拟器运行输出,但我仍然收到 CORS 错误.

在 Android 上模拟工作正常,并且有一个代理用于在浏览器中运行应用程序。

知道我是否走在正确的轨道上,是否有办法从 file:// 进行模拟?将应用发布到 App Store 后,此问题是否仍然存在?

最佳答案

iOS 上 CORS 的问题实际上并非来自ionic-cli ,但事实上我改用 WKWebView来自UIWebview .

This blog post解释了有关 WKWebView 的更多信息以及为什么它比其前身要好得多。

它还提到了有关 CORS 的内容:

UIWebview, or the older webview in iOS, never actually enforced CORS, but WKWebView does and does not provide a way to disable it. To address this, you need to implement CORS correctly and add the following entry:

Origin: http://localhost:8080

IF this is not possible (you do not own the API), a workaround can be to use the native HTTP plugin, @ionic-native/http.

所以我在我的 api 上启用了 CORS,一切都像以前一样工作。

关于cordova - 在 iOS 上模拟 ionic 应用程序时出现 CORS 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46144901/

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