如何使用servicestack swift插件向servicestack web api发送请求时添加http头?

时间:2015-12-17 04:17:56

标签: swift servicestack

下面是一个非常直接的代码,它将请求发布到api。

let req = PurchaseRequest()
req.cellphone = "5101111111"
req.amount = 6
let client = JsonServiceClient(baseUrl: "http://example.com/webapi")
let response = try! client.post(req)

现在,如何在请求中添加Http标头?例如,有一个名为“Authorization”的http标头,我们通常使用此标头提供令牌,以验证用户身份。我该怎么做?

1 个答案:

答案 0 :(得分:3)

let client = JsonServiceClient(baseUrl: "http://example.com/webapi")
client.requestFilter = { (req:NSMutableURLRequest) in
    req.addValue("FJEUJFJSKEJF#$"/*a token value*/, forHTTPHeaderField: "Authorization")
}

所以我找到了jsonserviceclient的名为requestFilter的属性,然后我可以获得标准的nsmutableurlrequest,这样其余的很简单,只需要简单的旧swift代码,我只需将我的令牌值添加到Authorization http头。我的代码正是这样做的。