react-native-ibm-mobilefirst 授权被重定向到未知 URL https://mfpredirecturi

react-native-ibm-mobilefirst authorization gets redirected to unknown URL https://mfpredirecturi

我正在开发一个 react-native Android 应用程序,它使用最新版本的 react-native-ibm-mobilefirst 库 (8.0.2020022509)。目前,每当我的移动应用程序执行以下语句 'WLAuthorizationManager.obtainAccessToken(Scope)' 时,我都会遇到标题中所述的问题。我的 MobileFirst 服务器 (8.0.0.00-20200211-1526) 位于反向代理 (iis) 后面,我注意到请求似乎被重定向到一个未知的 URL,因为 https://mfpredirecturi 不存在。结果,我的移动应用程序收到了“403 - 禁止:访问被拒绝”响应。

以下 GET 请求是从 redirect_uri 所在的移动应用发送的:https://mfpredirecturi

https://myserverhostname:9443/mfp/api/az/v1/authorization?scope=myscope&response_type=code&redirect_uri=https%3A%2F%2Fmfpredirecturi&client_id=2dff438b-4288-4e5a-8a5f-4bd29e8403b4&isAjaxRequest=true&x=0.9060663818636305

奇怪的是,我注意到我的其他应用程序使用 ibm-mfp-web-sdk 发送了相同的请求,除了 redirect_uri 参数并且完全没有问题:

https://myserverhostname:443/mfp/api/az/v1/authorization/redirect/ae5254a2-3dca-4a8e-b2a1-e6eba55e5dba

https://mfpredirecturi 重定向 URI 应作为 MobileFirst SDK 与服务器之间 OAuth 流的一部分。但是,这不是真正的 URI,并且由 MobileFirst React Native SDK 在内部使用。

IIS 似乎正在拦截重定向到基于 Location header 的 URI。您将必须修改反向代理配置以透明地允许位置 header 而不是尝试基于 header.

的重定向