崩溃:使用Swift 2.1的iOS 10中的AES128加密
我正在使用AES128加密。以下是我用过的代码:崩溃:使用Swift 2.1的iOS 10中的AES128加密
. . .
let encJson : String = response.objectForKey("data") as! String
let encryptionKey : String = “some key here”
//Crash on this line
response = EncryptionAndConversion.sharedInstance.converEncDataToStringWithAES128(encJson, key: encryptionKey)
print("response : \(response)")
. . .
func converEncDataToStringWithAES128(message:String, key myKey:String) -> NSDictionary {
let data = NSData(base64EncodedString: message, options: NSDataBase64DecodingOptions(rawValue: 0))
//The value of result comes nil
let result = NSString(data: (data?.AES128DecryptedDataWithKey(myKey))!, encoding: NSUTF8StringEncoding)
return convertStringToDictionary(result!)
}
可能是什么原因?我越来越崩溃的converEncDataToStringWithAES128(..)
功能与原因 致命错误:意外发现零而展开的可选值
我跨证实没有与消息和关键任何问题。
任何帮助,将不胜感激!
没有答案,但这是否也崩溃?
let encJson : String = response.objectForKey("data") as! String
到:
guard let encJson = response.objectForKey("data") as? String {
print("data is not a String")
return
}
没有。这不会崩溃。 –
这意味着“数据”不包含字符串。什么是'print(response.objectForKey(“data”))''输出? –
你能解决它吗? –
是你能解决这个问题? –
@ Mr.Bista:不,问题没有解决。 –
什么是print(response.objectForKey(“data”))的输出? –