当前位置: 首页 > 面试题库 >

在Swift中进行REST API调用

夏谦
2023-03-14
问题内容

我正在尝试使用Swift来对REST API进行GET调用,并且试图遵循众多教程,但无法弄清楚。要么是因为我无法弄清楚如何将所有Obj-
C转换为Swift,要么是因为不赞成使用n’这样的方法的一半。有谁知道如何进行调用以及解析返回的JSON数据?


问题答案:

您可以这样做:

var url : String = "http://google.com?test=toto&test2=titi"
var request : NSMutableURLRequest = NSMutableURLRequest()
request.URL = NSURL(string: url)
request.HTTPMethod = "GET"

NSURLConnection.sendAsynchronousRequest(request, queue: NSOperationQueue(), completionHandler:{ (response:NSURLResponse!, data: NSData!, error: NSError!) -> Void in
    var error: AutoreleasingUnsafeMutablePointer<NSError?> = nil
    let jsonResult: NSDictionary! = NSJSONSerialization.JSONObjectWithData(data, options:NSJSONReadingOptions.MutableContainers, error: error) as? NSDictionary

    if (jsonResult != nil) {
        // process jsonResult
    } else {
       // couldn't load JSON, look at error
    }


})

编辑:对于对此有疑问的人,也许您的JSON流是数组[]而不是对象{},因此您必须将jsonResult更改为
NSArray而不是NSDictionary



 类似资料:
  • 我有一个简单的JavaSpringRESTAPI应用程序,我不知道如何对它进行单元测试。我读过JUnit和Mockito的纪录片,但我想不出来。 下面是StudentController类中的post方法 这是在学生服务类中的插入学生方法 我使用MySQL作为数据库。我应该在单元测试中也使用数据库吗?我的意思是我不想要任何集成测试。我只需要单元测试。我在节点中使用supertest。js和它照顾所

  • 有没有任何一个测试REST API的使用硒网络驱动程序Maven TestNG。请分享信息或样本项目

  • 问题内容: 我刚刚下载了新的Xcode 7.0 beta,并完成了从Swift 1.2到Swift 2的迁移。迁移显然并没有改变整个代码,实际上,方法saveContext()很好,直到抛出2条错误为止: 二进制运算符“ &&”不能应用于两个布尔操作数 和 可以抛出呼叫,但未将其标记为“ try”,并且未处理错误 该方法如下所示: 关于如何使其运作的任何想法? 问题答案: 您提供的两个错误中的第一

  • 我正在尝试使用Swift对REST API进行GET调用,并尝试了许多教程,但都无法找到答案。要么是因为我不知道如何将所有的Obj-C翻译成Swift,要么是因为有一半的方法n'such被弃用了。有人知道如何调用并解析返回的JSON数据吗?

  • 问题内容: 在我的iOS应用程序中,我想使用WKWebView在应用程序中包装外部URL 。此URL需要基本身份验证(它需要用户和密码凭据,如以下屏幕截图所示)。 经过一番调查,我尝试使用 didReceiveAuthenticationChallengemethod来启用自动 登录,因此我不了解它的工作原理。 这是我的代码。 I’m facing with this exception: If

  • 问题内容: 我在Swift中使用,需要获取更好的错误消息。 在调试描述中(例如),我可以看到诸如“给定数据不是有效的JSON”之类的消息,但是我需要知道的是,而不是网络错误(例如)。 我尝试将其强制转换为,但这似乎并未显示更多信息。我当然不需要字符串-甚至错误代码也比这有用得多… 问题答案: 切勿在解码块中打印。这将返回一个毫无意义的通用错误消息。始终打印实例。然后,您会得到所需的信息。 或针对