我正在学习编写我的第一个IOS应用程序,该应用程序将从Proliphix IP网络恒温器中查询一些基本的OID。Proliphix支持多种方法,例如Curl;PHP和API GET&SET。在这些方法中,Swift最简单的方法是什么?
有人可以告诉我如何将以下方法之一转换为Swift吗?
这是Proliphix API的示例,可以在Google搜索中找到。
卷曲
获取curl -u主机名:密码-数据OID1.1 = http://192.168.1.100:8100/get
设置curl -u主机名:密码--data OID1.10.5 = 120 --data Submit =提交 http://192.168.1.100:8100/pdp
API GET
使用的URL是/ get。API GET请求是未指定OID值的OID列表。格式正确的请求应提供Content-Length标头。。该条目是编码的基本身份验证字(请参阅RFC 2617 -HTTP身份验证:基本和摘要访问身份验证)。
请求
POST /get HTTP/1.1
Authorization: Basic <credentials>
Content-Type: application/x-www-form-urlencoded
User-Agent: Jakarta Commons-HttpClient/2.0.2
Host: 192.168.111.114:8214
Content-Length: 92
OID1.10.9=&OID1.2=&OID1.1=&OID1.4=&OID1.8=&OID2.7.1=&
Run Code Online (Sandbox Code Playgroud)
响应
HTTP/1.1 200 OK
Cache-control: no-cache
Server: Ubicom/1.1
Content-Length: 166
Run Code Online (Sandbox Code Playgroud)
OID1.10.9=example@proliphix.com&OID1.2=SW Dev 114&OID1.1 = therm_rev_2 0.1.40&OID1.4 = 192.168.111.114&OID1.8 = 00:11:49:00:00:58&OID2.7.1 = NT100
API设置
使用的URL是/ pdp。API SET与请求消息的API GET相似,不同之处在于在等号处提供了所需的值。响应的格式不同。该条目是编码的基本身份验证字(请参阅RFC 2617 -HTTP身份验证:基本和摘要访问身份验证)。请求中的最后一项必须为“ submit = Submit”。在“ submit = Submit”之后不要包含“&”。
请求 …
我已经尝试了不同的东西来创建这个cURL请求的快速等价物,但我无法让它工作.
curl -X POST -F "file=@/Users/nicolas/sample.png" -F "mode=document_photo" https://api.idolondemand.com/1/api/sync/ocrdocument/v1 -F "apikey=xxx-xxx-xxx-xxx-xxx"
Run Code Online (Sandbox Code Playgroud)
相应的代码发布在下面.
func getText (image: UIImage){
let apiKey = "xxx-xxx-xxx-xxx-xxx"
let request = NSMutableURLRequest(URL: NSURL(string: "https://api.idolondemand.com/1/api/sync/ocrdocument/v1")!)
request.HTTPMethod = "POST"
request.addValue(apiKey, forHTTPHeaderField: "apikey")
request.addValue("document_photo", forHTTPHeaderField: "mode")
request.HTTPBody = UIImageJPEGRepresentation(image, 1)
let task = NSURLSession.sharedSession().uploadTaskWithRequest(request, fromData: UIImageJPEGRepresentation(image, 1), completionHandler: {data, response, error -> Void in
if let _ = data {
var error:NSError? = nil
do {
let jsonObject : AnyObject = try NSJSONSerialization.JSONObjectWithData(data!, options: [])
let json = JSON(jsonObject)
if let …Run Code Online (Sandbox Code Playgroud) 我正在学习简单的套接字程序并遇到过这些,我想知道htons和htonl之间有什么区别,甚至是ntohs和ntohl.