我正在使用Alamofire V3和iOS 9,我正在做一个简单的请求,如README
Alamofire.request(.GET, WS_URL)
.authenticate(user: user, password: password)
.validate(statusCode: 200..<300)
.responseJSON { response in
...
}
在第一次有效请求之后,我使用无效的凭据更改了凭据并且请求成功,但它应该失败。
如何使以前的凭据无效?
UPDATE
我找到了一个可能的解决方案,但我不确定它是最好的解决方案。
let plainString = "\(user):\(password)
let plainData = plainString.dataUsingEncoding(NSUTF8StringEncoding)
let base64String = plainData?.base64EncodedStringWithOptions(NSDataBase64EncodingOptions(rawValue: 0))
let headers = ["Authorization": "Basic " + base64String!]
Alamofire.request(.GET, urlRequest, headers: headers)
.authenticate(usingCredential: self.credential)
.responseJSON{ responseJson in
...
}
由于
答案 0 :(得分:1)
根据您的服务器实施,授权标头也可能是合适的
答案 1 :(得分:0)
假设您的终端没问题且他们获得了成功回复......
let
定义一个常量,一旦设置就无法修改。
var
定义了一个可以的变量。
尝试使用变量,如果你已经为它分配了编译然后重新编译。否则为变量使用不同的名称。
print
他们可以看到他们的价值观。
答案 2 :(得分:0)
在这些情况下,&#34;重置&#34;命令是你最好的朋友:
$ git reset --soft HEAD~1
重置会将当前的HEAD分支回滚到指定的版本。
请注意 --soft标志:这可确保保留撤消修订中的更改。运行该命令后,您将在工作副本中找到未更改的本地修改。
如果您不想保留这些更改,只需使用--hard标志即可。 请务必在您确定不再需要这些更改时执行此操作。
$ git reset --hard HEAD~1