Боюсь, я не могу поделиться URL API. Но я проверил на Почтальон , все работает. Это запрос POST , а следующий ответ:
{
"user_key": "b0aebdedb15e2beaaf479ca3c4f8227e8e970681"
}
Скриншот почтальона:
В коде это запрос, который я делаю с использованием Alamofire:
Alamofire.request("some url", method: .post, parameters: params, encoding: URLEncoding.httpBody, headers: ["Content-Type":"application/json"])
.responseObject { (response: DataResponse<User>) in
let userResponse = response.result.value
print("")
}
Но userResponse становится нулевым. Это Пользователь объект:
import ObjectMapper
class User: Mappable {
var authToken: String?
required init?(map: Map) {
}
func mapping(map: Map) {
self.authToken <- map["user_key"]
}
}
Я использую ObjectMapper здесь.
Предполагая, что это не JSON
объект, я попытался обработать его как String
:
Alamofire.request("some url", method: .post, parameters: params, encoding: URLEncoding.httpBody, headers: ["Content-Type":"application/json"])
.responseString { (response: DataResponse<String>) in
let dataUser = response.data as! Any
let dataUser1 = response.data as! AnyObject
let error = response.error
let code = response.response?.statusCode
print(response.value)
print(response.result.value)
}
Тем не менее, ничего. Я не могу получить значение. Код состояния, однако, получается равным 400 (неверный запрос).
Что именно это? JSON
объект или String
? Как мне это исправить?