[Swift通天遁地]四、网络和线程-(7)检测服务器接口的访问状态:验证请求结果和可访问性...

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
➤微信公众号:山青咏芝(shanqingyongzhi)
➤博客园地址:山青咏芝(https://www.cnblogs.com/strengthen/
➤GitHub地址:https://github.com/strengthen/LeetCode
➤原文地址:https://www.cnblogs.com/strengthen/p/10222573.html 
➤如果链接不是山青咏芝的博客园地址,则可能是爬取作者的文章。
➤原文已修改更新!强烈建议点击原文地址阅读!支持作者!支持原创!
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★

目录:[Swift]通天遁地Swift

本文将演示如何使用Alamofire验证请求结果和可访问性。

首先确保在项目中已经安装了所需的第三方库。

点击【Podfile】,查看安装配置文件。

1 source 'https://github.com/CocoaPods/Specs.git'
2 platform :ios, '12.0'
3 use_frameworks!
4 
5 target ‘DemoApp’ do
6     pod 'Alamofire', '~> 4.0'
7 end

根据配置文件中的相关配置,安装第三方库。

然后点击打开【DemoApp.xcworkspace】项目文件。

在项目导航区,打开视图控制器的代码文件【ViewController.swift】

现在开始编写代码,实现接口访问状态检测的功能。

 1 import UIKit
 2 //在当前的类文件中,引入已经安装的第三方类库
 3 import Alamofire
 4 
 5 class ViewController: UIViewController {
 6 
 7     override func viewDidLoad() {
 8         super.viewDidLoad()
 9         // Do any additional setup after loading the view, typically from a nib.
10         //依次测试下文的两个方法
11 
12         //检测接口的状态
13         manualValidation()
14 
15         //更快捷的方式检测接口的状态
16         automaticValidation()
17     }
18     
19     //添加一个方法,用来检测接口的状态
20     func manualValidation()
21     {
22         //调用网络操作库的网络请求方法
23         Alamofire.request("https://httpbin.org/get")
24             //添加验证方法
25             //检测状态的编码是否在200至300之间
26             .validate(statusCode: 200..<300)
27             //检测类型是否为JSON类型
28             .validate(contentType: ["application/json"])
29             //处理网络返回的数据
30             .responseData { response in
31                 //根据网络返回对象的结果,在控制台输出不同的日志。
32                 switch response.result {
33                     //检测成功
34                     case .success:
35                         print("---Validation Successful")
36                     //检测失败
37                     case .failure(let error):
38                         //输出详细的错误信息
39                         print(error)
40                 }
41             }
42     }
43     
44     //添加一个方法,使用更快捷的方式检测接口的各个状态
45     func automaticValidation()
46     {
47         //直接检测接口的可连接性。
48         //调用网络操作库的网络请求方法,并处理从服务器返回的JSON数据。
49         Alamofire.request("https://httpbin.org/get").validate().responseJSON { response in
50             //对网络返回的结果进行处理
51             //根据网络返回对象的结果,在控制台输出不同的日志
52             switch response.result {
53                 //检测成功
54                 case .success:
55                     print("---Validation Successful")
56                 //检测失败
57                 case .failure(let error):
58                     //输出详细的错误信息
59                     print(error)
60             }
61         }
62     }
63     
64     override func didReceiveMemoryWarning() {
65         super.didReceiveMemoryWarning()
66         // Dispose of any resources that can be recreated.
67     }
68 }

 

转载于:https://www.cnblogs.com/strengthen/p/10222573.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值