【发布时间】:2016-06-18 17:14:42
【问题描述】:
let url = URL(string: "\(SERVER_HOST)/post?fb_id=\(fb_user)")
var request = URLRequest(url: url!) // Crashes here
Alamofire.request(request)
.responseJSON { response in
switch response.result {
case .failure(let error):
onComplete(success: false)
case .success(let responseObject):
onComplete(success: true)
}
}
崩溃错误:
致命错误:在展开可选值时意外发现 nil
它在 Swift 3 之前就有效。
它是 NSURLRequest 并且有效。我该怎么做才能修复它?
【问题讨论】:
-
什么是
SERVER_HOST,什么是fb_user,什么是url(可能是nil) - 什么是组装字符串?您可能希望将 url 创建分成两条语句,一条用于创建字符串,一条用于将整个字符串传递给URL(...)。 -
例如,
SERVER_POST是否包含方案(http://或https://)。另外,fb_user是什么?它可能是一个可选的(除非你打开它会导致问题)?SERVER_POST或fb_user是否有任何保留字符(例如空格)?与我们分享完整的 URL 字符串。 -
@Rob 你说得对,非常感谢! Swift 3 使 (fb_user) 成为可选的。
标签: ios nsurlrequest urlrequest swift3 xcode8