Параметры POST в Swift - PullRequest
       13

Параметры POST в Swift

0 голосов
/ 31 декабря 2018

Как публиковать или отправлять параметры CanDTO 3 раза, используя цикл for в данном методе сообщения:

зацикливание параметра (params)

    {   “CanDTO": [
        {
          "id": "",
          “canId": "3",
          "unitId": "3"   }, 
   {
          "id": "",
          “canId": "3",
          "unitId": "3"   },
        {
          "id": "",
          “canId": "4",
           "unitId": "3" 
   }  ],

      "id": "",   "Date": "01/01/2019",   "notes": "" }

пожалуйста, кто-нибудь знает об этом .... Решите проблему

Используя этот метод сообщения

какотправить параметры как цикл, если выбрано 3 параметра, как в примере выше ...

func postmethod()
       {        
    let params = TotalcanDTO.init(CanDTO: CanDTO.init(id: “”,canId: 3,unitId: 3,),
    id:””,
    Date: 01/01/2019,
    notes: "")
            guard let uploadData = try? JSONEncoder().encode(params) else {
                return
            }


            let url = URL(string: "\(ApiManager.url)canApp/saveCanDetailsApp")!
            var request = URLRequest(url: url)
            request.httpMethod = "POST"
            request.setValue("application/json", forHTTPHeaderField: "Content-Type")

            let task = URLSession.shared.uploadTask(with: request, from: uploadData) { data, response, error in
                if let error = error {
                    print ("error: \(error)")
                    return
                }
                guard let response = response as? HTTPURLResponse,
                    (200...299).contains(response.statusCode) else {
                        print ("server error")
                        return
                }

                if let mimeType = response.mimeType,
                    mimeType == "application/json",
                    let data = data,
                    let dataString = String(data: data, encoding: .utf8) {
                    print ("got data: \(dataString)")
                }
            }
            task.resume()

        }

1 Ответ

0 голосов
/ 31 декабря 2018

Попробуйте сделать параметр в виде массива.var params = [Candto] ()

Затем выполните цикл, когда захотите, и добавьте свой объект в массив.

...