Swift Library for Access API

时间:2017-07-16 11:13:11

标签: android ios api

我是iOS开发的新手。我在Android开发方面有一点经验,想学习iOS开发。在Android中,我使用Retrofit库来访问API。

现在我想知道一种用于访问API的库。我想讨论一下具有良好性能,易于使用且易于理解的API库。是的,我当然已经尝试找到它,我明白了:

https://medium.com/ios-os-x-development/restkit-tutorial-how-to-fetch-data-from-an-api-into-core-data-9326af750e10

但是我需要更多关于访问API的库的想法,任何人都可以帮助我吗?

谢谢。

3 个答案:

答案 0 :(得分:3)

你可以在ios中Alamofire

 Alamofire.request("https://httpbin.org/get").responseJSON { response in
    print(response.request)  // original URL request
    print(response.response) // HTTP URL response
    print(response.data)     // server data
    print(response.result)   // result of response serialization

    if let JSON = response.result.value {
        print("JSON: \(JSON)")
    }
}

答案 1 :(得分:2)

在iOS中,唯一依赖网络的图书馆是Aalmofire。它简化了您的所有网络通话难题。它提供了从服务器访问数据的简单方法。 Alamofire 处于 swift 。如果要在目标C中创建项目,则目标C 中的同一个库可用AFNetworking

以下是编写api调用的示例:

let url = ""
let headers    = [ "Content-Type" : "application/json"]
let para : Parameters = [ "data" : JSONObject]
Alamofire.request(url, method: .post, parameters: para, encoding: JSONEncoding.default, headers : headers)
    .responseJSON { response in

        print(response)
        print(response.result)

}

注意:由于您是初学者,我没有说明 URLSessions (由Apple提供),这是编写API调用的完美方式。但它将来是一个非常好的选择。

答案 2 :(得分:2)

尽管Alamofire似乎是网络的不错选择,但原生URLSessionCodable protocol提供相同的功能,而不会为您的项目添加任何依赖项。

let task = URLSession.shared.dataTask(with: url) { data, response, error in
    // Handle data, response, and error
}

task.resume()