Передать объект JSON в запрос GET: iOS - PullRequest
0 голосов
/ 26 апреля 2019

Я хочу добавить объект JSON в запрос GET с помощью URL.Пожалуйста, обратитесь ниже URL.

https://testdata.com/xyz/&form={"id":"12", "data": "3"}

Я получаю nil при преобразовании String в URL

let serviceUrl = URL(string: url) 

Заранее спасибо.

Я былуже опробовал приведенное ниже решение, но, к сожалению, не повезло.

  • JSONSerialization.data
  • преобразование в строку с utf8
  • удаление пробелов, если есть
  • добавление PercentEncoding сURL хост разрешен

Ответы [ 2 ]

1 голос
/ 26 апреля 2019

Не рекомендуется отправлять тело запроса с GET запросом.GET запрос означает получение всех ресурсов / контента, которые может предложить этот URL.Если они анализируют тело GET на стороне сервера, это противоречит семантике.Но если вам действительно нужно это сделать.Используйте Almofire.Вот пример кода.

let parameters : [String : Any] = [
  "id":"12",
  "data":"3"

]

func getContent(parameters: [String: Any]) {
    Alamofire.request("http://18.218.235.193:3000/user/securedtoken", method: 
               .get, parameters: parameters, encoding: JSONEncoding.default)
        .responseObject {(response:
            DataResponse<YOUR RESPONSE MODEL HERE>) in
            let response =  response.result.value
            //Do Something (Success)



            }

    }
0 голосов
/ 26 апреля 2019

Я рекомендую вам использовать библиотеку Alamofire.Вы можете делать то, что хотите, используя следующий фрагмент кода

Alamofire.request(.GET, "http://httpbin.org/get", parameters: ["form": ["id": 12, "data": 3]])
         .response { request, response, data, error in
              print(request)
              print(response)
              print(error)
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...