【发布时间】:2016-08-01 01:35:27
【问题描述】:
所以我已经正确实施了 Google SignIn - 我现在要做的就是让用户登录并获取他们的所有联系人信息。但是,似乎确实没有适当的文档。我知道我必须查询https://www.google.com/m8/feeds/contacts/default/full,但我不知道该查询会去哪里或它的结构。有什么想法吗?
【问题讨论】:
所以我已经正确实施了 Google SignIn - 我现在要做的就是让用户登录并获取他们的所有联系人信息。但是,似乎确实没有适当的文档。我知道我必须查询https://www.google.com/m8/feeds/contacts/default/full,但我不知道该查询会去哪里或它的结构。有什么想法吗?
【问题讨论】:
我不知道该查询会去哪里或它的结构。有什么想法吗?
这个https://www.google.com/m8/feeds/contacts/default/full 被称为HTTP request。您将向服务器发送一个“GET”请求,如果成功,服务器将返回一个响应。
其中一种方法是使用XMLHttpRequest in Swift。
sn-p:
// Prepare the HTTP request object:
let request = CkoHttpRequest()
request.Path = "/xmlEcho.asp"
// This example will use the "PUT" HTTP request method
// (also known as HTTP verb)
request.HttpVerb = "PUT"
request.ContentType = "text/xml"
request.Charset = "utf-8"
success = request.LoadBodyFromString(xmlStr, charset: "utf-8")
基于this thread,你还可以使用这些方法:
使用 NSURLSession
let url = NSURL(string: "http://www.stackoverflow.com")
let task = NSURLSession.sharedSession().dataTaskWithURL(url!) {(data, response, error) in
print(NSString(data: data!, encoding: NSUTF8StringEncoding))
}
task.resume()
使用 NSURLConnection
首先,初始化一个 NSURL 和一个 NSURLRequest:
let url = NSURL(string: "http://www.stackoverflow.com")
let request = NSURLRequest(URL: url!)
然后,您可以通过以下方式异步加载请求:
NSURLConnection.sendAsynchronousRequest(request, queue: NSOperationQueue.mainQueue()) {(response, data, error) in
print(NSString(data: data!, encoding: NSUTF8StringEncoding))
}
或者你可以初始化一个 NSURLConnection:
let connection = NSURLConnection(request: request, delegate:nil, startImmediately: true)
如果这是您第一次来,这需要吸收很多东西。希望这会有所帮助。
【讨论】: