ios - 获取 URLSession.shared.dataTask 的 http 响应状态码

标签 ios swift nsurlsession

我请求一个包含此代码的网页

URLSession.shared.dataTask(with: NSURL(string: url)! as URL, completionHandler: { (data, response, error) -> Void in

if error == nil && data != nil {
// No error
}else{
// Error
if let httpResponse = response as? HTTPURLResponse {
  print(httpResponse.statusCode)
 }
}

我试图通过将响应转换到 HTTPURLResponse 来请求页面时获取错误代码,但转换不起作用并且未执行打印。你知道我怎样才能得到代码吗?

最佳答案

您的if let httpResponse 代码仅在错误检查if 语句的else 分支中运行。在没有发生错误的情况下,您可能还想检查响应。

关于ios - 获取 URLSession.shared.dataTask 的 http 响应状态码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46075228/

相关文章:

ios - 我可以使用 jpg 而不是 png 作为 iOS 网络应用启动图像吗?

ios - 具有基本身份验证挑战的 NSURLSession

ios - 更新按钮标题

swift - 从 UIApplicationShortcutItem 触发的 AppDelegate 导航到 ViewController

ios - 当我使用 post 方法向服务器发送请求时显示异常

ios - 带有 URL 的 NSURLSession downloadTask 返回 nil

ios - 如何在快速关闭第二个 View Controller 后启用带有 View 的自定义 View Controller

ios - 我应该在 iOS 应用程序中的什么位置存储默认字符串列表?

ios - iOS 8 的 RTSP

ios - 使用 Uitextfield 进行用户输入,尝试转换为 int,如果不是 int 则返回 0