我试图提出这个请求,但只返回错误401,请求正确吗?我要用基本的八月
var user = ""
var password = ""
user = textField.text!
password = textField2.text!
print(user)
print(password)
let credentialData = ("\(user):\(password)").data(using: String.Encoding.utf8)!
print(credentialData)
let base64Credentials = credentialData.base64EncodedString(options: [])
print(base64Credentials)
let headers: HTTPHeaders = ["Authorization":" Basic \(base64Credentials)"]
print(headers)
Alamofire.request("https://www.floratilemevidencia.com.br/wp-json/wp/v2/users/me", headers: headers)
.validate().responseJSON { response in
switch response.result {
case .success:
print("Validation Successful")
let viewController: UIViewController = self.storyboard!.instantiateViewController(withIdentifier: "SideNavigationController")
self.present(viewController, animated: true, completion: { _ in })
case .failure(let error):
print(error.localizedDescription)
self.alertLabel.isHidden = false
}
}它只返回错误401。
这是HTTPHeaders的一部分吗?
发布于 2017-11-13 15:40:15
在您的代码中做一些小的更改,它就能工作了。
var user = ""
var password = ""
user = textField.text!
password = textField2.text!
print(user)
print(password)
let credentialData = ("\(user):\(password)").data(using: String.Encoding.utf8)!
print(credentialData)
let base64Credentials = credentialData.base64EncodedString(options: [])
print(base64Credentials)
let url: String = "https://www.floratilemevidencia.com.br/wp-json/wp/v2/users/me"
var request = URLRequest(url: NSURL(string: url)! as URL)
request.httpMethod = "GET"
request.setValue("Basic \(base64Credentials)", forHTTPHeaderField: "Authorization")
Alamofire.request(request)
.validate().responseJSON { response in
switch response.result {
case .success:
print("Validation Successful")
// Your desired functionality
case .failure(let error):
print(error.localizedDescription)
// Your desired functionality
}
}发布于 2017-03-27 14:11:56
最好让阿拉莫火产生你的头。每https://github.com/Alamofire/Alamofire#authentication
编辑
替换这段代码
let credentialData = ("\(user):\(password)").data(using: String.Encoding.utf8)!
print(credentialData)
let base64Credentials = credentialData.base64EncodedString(options: [])
print(base64Credentials)
let headers: HTTPHeaders = ["Authorization":" Basic \(base64Credentials)"]使用
var headers: HTTPHeaders = [:]
if let authorizationHeader = Request.authorizationHeader(user: user, password: password) {
headers[authorizationHeader.key] = authorizationHeader.value
}https://stackoverflow.com/questions/43048342
复制相似问题