Android 如何在安卓系统中进行解密错误体改造?
我对使用改装的响应中的解密错误体有问题。 我可以从下面的改装中获得错误主体:Android 如何在安卓系统中进行解密错误体改造?,android,encryption,Android,Encryption,我对使用改装的响应中的解密错误体有问题。 我可以从下面的改装中获得错误主体: val json = JSONObject(res.errorBody?.string()) val data = json.get("data").toString() 注释:错误正文 {“数据”:“BSV9RBDM4GIDX6JVYDSUPKRMTL6JZHZOFIUCZ+R78SBR3TUCJQ9IDQ7WL9QKTFDMPxCMUBIKFZQZBMNYOALA9BTGDYA/6lkJQjA
val json = JSONObject(res.errorBody?.string())
val data = json.get("data").toString()
注释:错误正文
{“数据”:“BSV9RBDM4GIDX6JVYDSUPKRMTL6JZHZOFIUCZ+R78SBR3TUCJQ9IDQ7WL9QKTFDMPxCMUBIKFZQZBMNYOALA9BTGDYA/6lkJQjAOk=“”}
之后,我需要将对象数据解密为真实数据。以下是我的加密:
fun decrypt(encrypted: String?, iv: String, key: String): String {
return try {
val sKeySpec = generateKey(key)
val ivKey = generateIV(iv)
val cipher = Cipher.getInstance("AES/CBC/PKCS5Padding")
cipher.init(Cipher.DECRYPT_MODE, sKeySpec, ivKey)
val original = cipher.doFinal(Base64.decode(encrypted, Base64.NO_WRAP))
return String(original, Charsets.UTF_8)
} catch (e: Exception) {
Timber.e("Error Decrypt: $e")
""
}
}
呼叫加密
val decryption = EncryptionUtils.decrypt(data, iv, key)
Timber.e("oooo: ${decryption}")
所以当我记录解密时,它显示如下:
ApiError(代码=401,消息=Unauthorized,数据=null,错误=null)
但来自服务器的真实数据响应如下所示:
{“代码”:401,“消息”:“未经授权”…}
我不知道出了什么问题。
各位,请帮我解决为什么会这样回来
ApiError(代码=401,消息=Unauthorized,数据=null,错误=null)
我希望它像下面那样返回:
{“代码”:401,“消息”:“未经授权”…}
你能提供所有必要的数据来重现吗?因为目前您只添加了部分代码(甚至没有编译),并且缺少数据。请参阅