CORS |请求 header 字段 Access-Control-Allow-Headers 离子不允许授权 | IOS 13 飞行前响应
CORS | Request header field Authorization is not allowed by Access-Control-Allow-Headers ionic | IOS 13 preflight response
我已将我的 IOS ionic v1 应用程序迁移到 IOS 13 和 xcode 11.5。当我安装该应用程序并尝试首次登录时,我就能够成功登录。但是,当我终止该应用程序并尝试打开该应用程序时,它将不允许我自动登录。我的服务已部署到 IIS.
在config.xml中添加了这些设置
<preference name="WKSuspendInBackground" value="false" />
<preference name="iosScheme" value="httpsionic" />
<allow-navigation href="httpsionic://*" />
<allow-navigation href="http://localhost:8100/*" />
当我从任务管理器中终止应用程序后尝试打开应用程序时。它不允许我登录。它给我一个错误
Request header field Authorization is not allowed by
Access-Control-Allow-Headers.
第一次 运行 当我安装应用程序时按预期工作:-
关闭应用程序并再次打开它:-
这是控制台日志
请让我知道我在这里遗漏了什么,以便访问应用程序时不会出现上述 CORS 错误。
这是我的离子信息
Ionic:
Ionic CLI : 5.3.0
Ionic Framework : ionic1 1.2.4
@ionic/v1-toolkit : 2.0.11
Cordova:
Cordova CLI : 9.0.0 (cordova-lib@9.0.1)
Cordova Platforms : ios 5.1.1
Cordova Plugins : cordova-plugin-ionic-webview 5.0.0, (and 18 other plugins)
Utility:
cordova-res : not installed
native-run : 0.2.8 (update available: 1.0.0)
System:
ios-deploy : 1.9.0
ios-sim : 8.0.2
NodeJS : v10.16.3 (/usr/local/bin/node)
npm : 6.9.0
OS : macOS Catalina
Xcode : Xcode 11.5 Build version 11E608c
I did not get any solution for IIS
这可能对遇到此问题的人有所帮助。所以我已经将我的服务迁移到 azure web 应用程序。并且使用以下命令解决了所有 CORS 问题。在天蓝色中,我可以在 运行 来自终端的这些命令之后添加自定义来源。
为此:
- Open Terminal in your Mac
- Run: /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
- Once that is finished: brew update && brew install azure-cli
- Then login with your credentials by running: az login. this will ask you to open a website to authorize your device
https://aka.ms/devicelogin
- Then run the azure CLI command for your specific app (this is an example of my app): az webapp cors add --allowed-origins
ionic://***.com --name *** --resource-group ***
参考文献:
如何安装 Azure CLI:https://docs.microsoft.com/en-us/cli/azure/install-azure-cli-macos?view=azure-cli-latest
使用 Azure CLI 配置 CORS:https://docs.microsoft.com/en-us/cli/azure/webapp/cors?view=azure-cli-latest#az-webapp-cors-add
注意 :- 非常欢迎,如果有人找到了 IIS 的解决方案,请 post 在这里添加 link 以供参考。
我已将我的 IOS ionic v1 应用程序迁移到 IOS 13 和 xcode 11.5。当我安装该应用程序并尝试首次登录时,我就能够成功登录。但是,当我终止该应用程序并尝试打开该应用程序时,它将不允许我自动登录。我的服务已部署到 IIS.
在config.xml中添加了这些设置
<preference name="WKSuspendInBackground" value="false" />
<preference name="iosScheme" value="httpsionic" />
<allow-navigation href="httpsionic://*" />
<allow-navigation href="http://localhost:8100/*" />
当我从任务管理器中终止应用程序后尝试打开应用程序时。它不允许我登录。它给我一个错误
Request header field Authorization is not allowed by Access-Control-Allow-Headers.
第一次 运行 当我安装应用程序时按预期工作:-
关闭应用程序并再次打开它:-
这是控制台日志
请让我知道我在这里遗漏了什么,以便访问应用程序时不会出现上述 CORS 错误。 这是我的离子信息
Ionic:
Ionic CLI : 5.3.0
Ionic Framework : ionic1 1.2.4
@ionic/v1-toolkit : 2.0.11
Cordova:
Cordova CLI : 9.0.0 (cordova-lib@9.0.1)
Cordova Platforms : ios 5.1.1
Cordova Plugins : cordova-plugin-ionic-webview 5.0.0, (and 18 other plugins)
Utility:
cordova-res : not installed
native-run : 0.2.8 (update available: 1.0.0)
System:
ios-deploy : 1.9.0
ios-sim : 8.0.2
NodeJS : v10.16.3 (/usr/local/bin/node)
npm : 6.9.0
OS : macOS Catalina
Xcode : Xcode 11.5 Build version 11E608c
I did not get any solution for IIS
这可能对遇到此问题的人有所帮助。所以我已经将我的服务迁移到 azure web 应用程序。并且使用以下命令解决了所有 CORS 问题。在天蓝色中,我可以在 运行 来自终端的这些命令之后添加自定义来源。
为此:
- Open Terminal in your Mac
- Run: /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
- Once that is finished: brew update && brew install azure-cli
- Then login with your credentials by running: az login. this will ask you to open a website to authorize your device https://aka.ms/devicelogin
- Then run the azure CLI command for your specific app (this is an example of my app): az webapp cors add --allowed-origins ionic://***.com --name *** --resource-group ***
参考文献:
如何安装 Azure CLI:https://docs.microsoft.com/en-us/cli/azure/install-azure-cli-macos?view=azure-cli-latest 使用 Azure CLI 配置 CORS:https://docs.microsoft.com/en-us/cli/azure/webapp/cors?view=azure-cli-latest#az-webapp-cors-add
注意 :- 非常欢迎,如果有人找到了 IIS 的解决方案,请 post 在这里添加 link 以供参考。