【发布时间】:2016-06-13 09:04:09
【问题描述】:
如何获取从 REST API 调用返回到 Raspberry Pi 传感器的数据?
我一直在使用邮递员来操作 GET 和 POST 调用,因此我可以看到它有效并查看响应。 xcode控制台返回的信息如下:
可选( { URL: >http://192.168.1.83:8000/GPIO/10/value } { 状态码: 200, headers { “缓存控制”=“无缓存”; “内容长度”= 1; “内容类型”=“文本/纯文本”; 日期 =“格林威治标准时间 2016 年 2 月 29 日星期一 23:40:32”; 服务器 = "WebIOPi/0.7.1/Python3.4"; } })
我使用的代码是从邮递员生成的,如下:
import Foundation
let headers = [
"authorization": "Basic ***SNIP***",
"cache-control": "no-cache",
"postman-token": "e-4d2-2------d---9d---c0bc72a44f7e"
]
var request = NSMutableURLRequest(URL: NSURL(string: "http://192.168.1.83:8000/GPIO/10/value")!,
cachePolicy: .UseProtocolCachePolicy,
timeoutInterval: 10.0)
request.HTTPMethod = "GET"
request.allHTTPHeaderFields = headers
let session = NSURLSession.sharedSession()
let dataTask = session.dataTaskWithRequest(request, completionHandler: { (data, response, error) -> Void in
if (error != nil) {
print(error)
} else {
let httpResponse = response as? NSHTTPURLResponse
print(httpResponse)
}
})
dataTask.resume()
我想要调用 GPIO 引脚 10 所返回的值,该值将是 0 或 1。如果我尝试从完成处理程序响应中获取该值,它会返回 Nil,以及几乎其他任何我试着让它崩溃。
【问题讨论】:
标签: swift raspberry-pi nsurlsession webiopi