ios - 目标 c - 使用 device_id 预授权请求正文
问题描述
由于我将 IBM Framework 升级到最新版本,因此有一个额外的 device_id。我可以知道是否可以将其从我的请求正文中删除?因为它会导致 400 错误请求。
{ "client_id": "84q113475-ffac-4a17-bf1b-be666369e097", "scope": "Authenticate", "
device_id
": "esBoCz0yTHEa87iQIrSdMqWJoVRsVc-XHqhf3tOCBXsTOoojcWgiASfaUeFYsxgMnTmGhW3M8EMiDM5Z7WvhpXw==", "challengeResponse": { "Authenticate": { "username": "USER1", "密码": "WuPydyRBXUQ6pbNKhhoe2EklOruf2BcB4E8=", "deviceId": "0C35D8C7-763B-45AC-B229-DF01AEAD519B" } } }
解决方案
当移动应用程序尝试连接旧版本的 MobileFirst Foundation Server(之前的版本8.0.2020101311
)时,会发生这种情况。PH30473 STRENGTHENING PRE-AUTH ENDPOINT
MobileFirst 的最新 iFix完成了一些安全性增强( )。这要求服务器和客户端应用程序处于同一级别。但是,为了确保兼容性,SDK 可以设置一个标志以继续使用旧版本的服务器如果您无法升级服务器,作为兼容性措施,您可以选择使用较8.0.2020101412
旧版本的较新的 SDK(版本或更高版本) Mobile Foundation 服务器(之前的版本8.0.2020101311
)通过添加以下配置:
原生安卓应用
- 将以下行添加到您的
mfpclient.properties
文件中:sdkProtocolVersion=1
原生 iOS 应用
- 将以下条目添加到您的
mfpclient.plist
:- 名称 - sdkProtocolVersion
- 类型 - 编号
- 价值 - 1
Cordova 应用程序
- 在
<widget>
项目的config.xml
.<mfp:SDKProtocolVersion>1</mfp:SDKProtocolVersion>
注意:推荐的方法是将您的 MobileFirst Server 版本升级到最新版本并在 MFP 控制台中添加新版本的应用程序,并且不使用上述兼容性配置。
推荐阅读
- python - 如何一次检查多个变量的值?
- javascript - 为什么我不断收到“错误:必须提供 media_id 字段。” 使用 Twit NPM 时?
- java - 如何使用 Gradle 指定 JVM 选项?
- java - org.json.JSONException:字符 0 处的预期文字值
- java - Java 流 - 从地图列表中获取地图
- json - 如何将(Deno)服务器发送的 JSON 保存为 Kotlin 中的数据类模型?
- python - 如何使用 NumPy 制作二维锯齿状数组
- android - 如何在 Flutter 中实现应用内截图?
- python - 对于内部列表,将字符串分解为 3 个字符的首字母缩写词
- swift - 我可以使用 RxSwift 摆脱回调地狱吗?