swift4安装Just
iOS 2018-07-01 10:37:22

Just 封装的第三方HTTP请求库。

在swift老版本中,pod安装只要加

pod 'Just' 

 

在swift4中这样安装build失败,改成:

pod 'Just', :git => 'https://github.com/JustHTTP/Just.git', :branch => 'swift-4'

 

 

 POST不加参数:

    let HomeIndexListUrl = "http://xxxx.com/api/v1/app-test/list" // 接口地址

    var HomeIndexList : [HomeCell] = []     // 类型是在model中建立的HomeCell,默认为空

    

    // 视图载入方法

    override func viewDidLoad() {

        super.viewDidLoad()

 

        // Uncomment the following line to preserve selection between presentations

        // self.clearsSelectionOnViewWillAppear = false

 

        // Uncomment the following line to display an Edit button in the navigation bar for this view controller.

        // self.navigationItem.rightBarButtonItem = self.editButtonItem

        

 

        loadHomeList() // 加载列表

        

        // 下拉刷新

        self.refreshControl = UIRefreshControl() // 初始化

        // 刷新的动作是loadHomeList

        refreshControl?.addTarget(self, action: #selector(loadHomeList), for: .valueChanged)

    }

    

    // 加载首页接口数据

    @objc func loadHomeList() {

        Just.post(HomeIndexListUrl) { (r) in

            guard let json = r.json as? NSDictionary else {

                // 保证结果为json 并且解析为字典,否则就return

                return

            }

            let listData = TravelList(fromDictionary: json).data!   // 强制转换

            

            self.HomeIndexList = listData.map({ (data) -> HomeCell in

                // 将接口的data数据,转换成想要的字段形式,接口里面点赞数的字段名称是like ,所以是将data.like注入到想要的likes里面

                return HomeCell(avatar: data.avatar, nickname: data.nickname, position: data.positon, likes: data.like)

            })

            

            // dump(self.HomeIndexList) // 打印数据

            

            // 因为这里是异步的,所以取到数据以后 ,要更新主线程代码

            OperationQueue.main.addOperation {

                self.tableView.reloadData()

                // 刷新过以后,刷新的动作要停止掉

                self.refreshControl?.endRefreshing()

            }

        }

    }

 

 

 

本文来自于:http://www.yoyo88.cn/study/swift/325.html

Powered by yoyo苏ICP备15045725号