Я использую бета-версию almofire 5 и получаю неверные параметры в ответе API. Мой код:

let parameters: [String: String] = [
            "email" : "XXXXX@gmail.com",
            "first_name" : "XXX",
            "last_name" : "XXX",
            "provider": "XXX",
            "provider_id": "XXXX",
            "age" : "XXXXX"
        ]

    AF.request("https://XXXXX.app/public/api/XXXXXX", method: .post, parameters: parameters, encoding: JSONEncoding.default,, headers: ["XXXXXX" : "accesstoken"])
        .responseJSON { error in
           print(response)
    }

Какова причина? заранее спасибо

0
user10363002 2 Май 2019 в 09:34

2 ответа

Лучший ответ

Вы должны проверить несколько вещей в первую очередь.

Вы можете добавить объект «Параметры». например:

let parameters: [Parameters] = [
        "email" : "XXXXX@gmail.com",
        "first_name" : "XXX",
        "last_name" : "XXX",
        "provider": "XXX",
        "provider_id": "XXXX",
        "age" : "XXXXX"
    ]

В ваших Hedears, вы должны сначала указать имя параметра. например:

   ["accesstoken" : "xxxxx"]

Дважды проверьте имя вашего заголовка с помощью бэкэнда (например: - accesstoken, token и т. Д.)

Проверьте тип кодировки с помощью Backend developer. вы можете использовать (URLEncoding.httpBody, URLEncoding.queryString, JSONEncoding.default ...)

0
Chathuranga Silva 2 Май 2019 в 07:39

Вы вставляете два символа без ключа ввода и значения

Попробуй это

let parameters: [String: String] = [
        "email" : "XXXXX@gmail.com",
        "first_name" : "XXX",
        "last_name" : "XXX",
        "provider": "XXX",
        "provider_id": "XXXX",
        "age" : "XXXXX"
    ]

AF.request("https://XXXXX.app/public/api/XXXXXX", method: .post, parameters: parameters, encoding: JSONEncoding.default, headers: ["XXXXXX" : "accesstoken"])
    .responseJSON { error in
       print(response)
1
masoud 2 Май 2019 в 06:56