POST запрос, передача данных


#1

Добрый день. В работе с запросами столкнулся с новой проблемой, не могу передать данные в такую форму
image
Через Postman передается все как обычно


а вот в программно не получается.
Таким образом request.httpBody = "weight=2".data(using: .utf8) не срабатывает и через передачу параметров не получается ` let parametrs = [“data:[data_type:[city:3]]”]
request.httpMethod = “POST”
guard let httpBody = try? JSONSerialization.data(withJSONObject: parametrs, options: []) else {return}
print(parametrs)
request.httpBody = httpBody
request.httpBody = “act=credit_calculate”.data(using: .utf8)

    let session = URLSession.shared
    session.dataTask(with: request) { (data, response, error) in
        if let response = response{
        print(response)
        }
        
        guard let data = data else {return}
        do {
            let json = try JSONSerialization.jsonObject(with: data, options: [])
            print(json)
        } catch{
            print(error)
        }
    }.resume()`

Параметры уже как только не составлял.
Подскажите где ошибка или что я делаю не так ?


#2

Вы здесь присваиваете значение httpBody

а здесь перезаписываете его


#3

Понял, подскажите тогда как мне передать одновременно и данный параметр request.httpBody = “act=credit_calculate”.data(using: .utf8) и значения?


#4

Одной строкой через &

request.httpBody = "act=credit_calculate&period=4&city=5".data(using: .utf8)

#5

Спасибо! Получилось. Где можно найти больше материала по работе с Rest API и в целом с запросами ?


#6

HTTP изучайте не ошибётесь)