HTTP POST запрос с JSON

#json #swift #swift3

#json #swift #swift3

Вопрос:

У меня возникли проблемы с сериализацией JSON в swift.

Мой код выглядит так:

 var username = "xcode"
var password = "pass"

let json = ["username":username, "password":password]
let jsonData = try JSONSerialization.data(withJSONObject: json, options: .prettyPrinted)
var request = URLRequest(url: URL(string: "myServer")!)

request.httpMethod = "POST"
request.httpBody = jsonData
  

Моя проблема в том, что когда я отправляю петицию на сервер (который работает нормально), он возвращает мне эту строку кода:

 responseString = Optional("{"username":["This field is required."],"password":["This field is required."]}")
  

Что я делаю не так?

Комментарии:

1. ответ выглядит некорректно, с какой проблемой вы столкнулись?

Ответ №1:

Код должен быть:

 var username = "xcode"
var password = "pass"
let json = ["username":username, "password":password]
let jsonData = try JSONSerialization.data(withJSONObject: json, options: .prettyPrinted)
var request = URLRequest(url: URL(string: "http://10.192.118.193:8000/users/")!)

request.httpMethod = "POST"
request.httpBody = jsonData
request.setValue("application/json; charset=utf-8", forHTTPHeaderField: "Content-Type")