ios - swift 2.0 与 Alamofire : How to send http headers with X-WSSE Authorization?

标签 ios swift http-headers alamofire

这是我的代码:

>   let uuid: CFUUIDRef = CFUUIDCreate(nil)
    let nonce: CFStringRef = CFUUIDCreateString(nil, uuid)
    let dateFormatter: NSDateFormatter = NSDateFormatter()
    let timestamp = NSDate()
    let secretKey = "DAqE6lBUgzxJRuR287GR"
    let username = "us_demo003"

    let formattedDate: String = dateFormatter.stringFromDate(timestamp)


    let text = String((nonce as String)+formattedDate+secretKey)

    let sha1 = text.sha1()

    let passwordDigest = sha1.toBase64()

    let headers = ["Username":username,"PasswordDigest": passwordDigest, "Nonce":(nonce as String), "Created":formattedDate]

    let theUrlString = "url here"

    manager.request(.GET, theUrlString, parameters: nil, encoding: ParameterEncoding.URL, headers: theHeaders).responseJSON { (result) -> Void in
        print("BEGIN")
        print("\n\n\n\n\n\n\n\nBEGIN\n\(result)\n\n\n\n\n\nEND")
        print("STOP")
    }

我得到的结果如下:

SUCCESS: {
data = "";
replyCode = 1;
replyText = "No Authentication Header";

我该如何使用 Alamofire 发送身份验证 header ?我已经检查了 github 上的文档。我做的不对。

谢谢

最佳答案

相反,您想创建 Authorization header 在哪里 Authorization是字典键和 WWSE profile=\"username_token\"是值(value)。然后你还需要设置 X-WSSE UsernameToken Username="admin", PasswordDigest="buctlzbeVflrVCoEfTKB1mkltCI=", Nonce="ZmMzZDg4YzMzYzRmYjMxNQ==", Created="2014-03-22T15:24:49+00:00" 的 header 键.

let token = "some generated token"

let headers = [
    "Authorization": "WWSE profile=\"\(token)\""
    "X-WSSE": "UsernameToken Username=\"admin\", PasswordDigest=\"buctlzbeVflrVCoEfTKB1mkltCI=\", Nonce=\"ZmMzZDg4YzMzYzRmYjMxNQ==\", Created=\"2014-03-22T15:24:49+00:00\""
]

可以找到有关 WSSE 身份验证的更多信息 here .

关于ios - swift 2.0 与 Alamofire : How to send http headers with X-WSSE Authorization?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34952442/

相关文章:

ios - swift:键盘观察器不起作用

IOS - 处理 HTTP header 中的 token 身份验证

ios - Alamofire 在接收所有数据之前验证 header (完整主体)

iphone - 核心数据 'modified' 时间戳

swift - Playground Xcode 永远不会停止运行,有什么想法吗?

ios - iOS 中的 ARC 问题

ios - 错误的工作日符号 (weekdaySymbols)

http-headers - 如何识别当有人从 Google+ 链接到我的网站时创建的网络请求?

ios - 什么是 libswiftRemoteMirror.dylib,为什么它包含在我的应用程序包中?

ios - 将图像转换为 CVPixelBuffer 以进行机器学习 Swift