我与IBM MobileFirst v8集成的Cordova IOS应用程序运行良好.但是我遇到了 Android的一个奇怪问题. 场景是, 用户必须登录安全检查才能访问该应用程序. 调用质询处理程序并将凭据提交给(runtim
场景是,
用户必须登录安全检查才能访问该应用程序.
调用质询处理程序并将凭据提交给(runtime / api / preauth / v1 / preauthorize).我在日志中看到安全检查已通过.
我可以看到授权终点的下一次调用(runtime / api / az / v1 / authorization)
但是,在传递给此终点的参数中,我发现Android和IOS之间存在差异.
Android的
response_type=code scope= client_id= redirect_uri=http://mfpredirecturi&isAjaxRequest=true&x=0.9217767383903592
Android的后续调用令牌生成终点失败.
/ runtime / api / az / v1 / token HTTP / 1.1“400
{status:400,errorCode:“invalid_client”,描述:“JWT格式不正确”}
IOS
response_type=code scope= client_id= redirect_uri=http%3A//mfpredirecturi
WLAuthorizationManager.login(SECURITY_CHECK_NAME,凭证)触发/预授权呼叫
cordova-mfp-plugin(8.0.2016110713)
cordova-android(5.2.0)
我的主要嫌疑人是redirect_uri,它不是仅为Android编码的.是导致问题的那个?是否可以编码并发送cordova应用程序的redirect_uri?
您可以尝试更新的MFP适配器插件在你的pom.xml中
<build> <plugins> <plugin> <groupId>com.ibm.mfp</groupId> <artifactId>adapter-maven-plugin</artifactId> <version>8.0.2017021701</version> <extensions>true</extensions> </plugin> </plugins> </build>
这个适配器插件版本工作正常.