为什么我在尝试向 iOS Swift 中的服务器发出 post 请求时出现此错误:在展开可选值时意外发现 nil?
Why I get this error while trying to make post request to a server in iOS Swift: unexpectedly found nil while unwrapping an Optional value?
func uploadImage(var image:UIImage)
{
var imageData = UIImagePNGRepresentation(image)
let base64String = imageData!.base64EncodedStringWithOptions([.Encoding64CharacterLineLength])
let parameters = [
"img": base64String
]
Alamofire.request(.POST, API_URL, parameters:parameters) .response {
(request, response, data, error) in
}
}
图像不为零。而且我找不到哪个值实际上是零。
imageData 可能为零。始终执行 nil 检查并避免展开。
func uploadImage(var image:UIImage) {
if let imageData = UIImagePNGRepresentation(image), let base64String = imageData.base64EncodedStringWithOptions([.Encoding64CharacterLineLength]) {
let parameters = [
"img": base64String
]
Alamofire.request(.POST, API_URL, parameters: parameters) .response {
(request, response, data, error) in
}
}
}
func uploadImage(var image:UIImage)
{
var imageData = UIImagePNGRepresentation(image)
let base64String = imageData!.base64EncodedStringWithOptions([.Encoding64CharacterLineLength])
let parameters = [
"img": base64String
]
Alamofire.request(.POST, API_URL, parameters:parameters) .response {
(request, response, data, error) in
}
}
图像不为零。而且我找不到哪个值实际上是零。
imageData 可能为零。始终执行 nil 检查并避免展开。
func uploadImage(var image:UIImage) {
if let imageData = UIImagePNGRepresentation(image), let base64String = imageData.base64EncodedStringWithOptions([.Encoding64CharacterLineLength]) {
let parameters = [
"img": base64String
]
Alamofire.request(.POST, API_URL, parameters: parameters) .response {
(request, response, data, error) in
}
}
}