json - 快速发送自定义 HTTP header

标签 json swift

我设法从我的服务器获取 json,但现在我想通过 http header 添加额外的安全性。这就是我的代码现在几乎看起来的样子:

let urlPath = "http://www.xxxxxxxx.com"
        let url = NSURL(string: urlPath)
        let session = NSURLSession.sharedSession()
        let task = session.dataTaskWithURL(url!, completionHandler: { (data, response, error) -> Void in
            if ((error) != nil) {
                println("Error")
            } else {
                // process json
                let jsonResult = NSJSONSerialization.JSONObjectWithData(data, options: NSJSONReadingOptions.MutableContainers, error: nil) as! NSDictionary

                println(jsonResult["user"])
            }
        })

我要添加到此请求的 header 如下:

  • uid,它保存一个整数值
  • 哈希,它是一个字符串

如果有帮助,我有另一个使用此语法在 Titanium 框架中构建的应用程序:

xhr.setRequestHeader('uid', userid);
xhr.setRequestHeader('hash', hash);

所以,我基本上是在寻找 Swift 的等价物。

最佳答案

您正在使用 dataTaskWithURL 而您应该使用 dataTaskWithRequest,它将 NSMutableURLRequest 对象作为输入。使用此对象,您可以设置 HTTP header 、HTTPBody 或 HTTPMethod

        let urlPath = "http://www.xxxxxxxx.com"
        let url = NSURL(string: urlPath)
        let session = NSURLSession.sharedSession()
        let request = NSMutableURLRequest(URL: url!)
        request.HTTPMethod = "GET" // make it post if you want
        request.addValue("application/json", forHTTPHeaderField: "Content-Type")//This is just an example, put the Content-Type that suites you
        //request.addValue(userid, forHTTPHeaderField: "uid")
        //request.addValue(hash, forHTTPHeaderField: "hash")
        let task = session.dataTaskWithRequest(request, completionHandler: { (data, response, error) -> Void in
          //do anything you want
        })
        task.resume()

关于json - 快速发送自定义 HTTP header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32786566/

相关文章:

ios7 中的 swift3.0 崩溃

iOS 应用程序在不使用 iOS 11 API 的情况下遵守 iPhone X 屏幕限制

ios - Swift 包管理器 - 自定义框架

json - Laravel 5.7 存在/具有 JSON 字段类型的唯一验证

json - 如何使用 jq 修改嵌套对象

json - 通过 Jenkins REST API 获取 IP 地址?

swift - 保存过滤后的电影 GPUImage 2

ios - 当我从 View 返回时,标签栏不显示

javascript - 如何在 react 中的 map 函数中将对象作为 Prop 传递

javascript - 心理 JSON 侧手翻,通过键匹配值