Возникла проблема с конвертированием ответа в формате UTF-8 - PullRequest
0 голосов
/ 29 мая 2019

Я получаю сообщение об ошибке с этой строкой:

Data(from: responseValue.utf8 as! Decoder)

enter image description here)

Невозможно преобразовать значение типа «Данные» в ожидаемый тип аргумента «Данные»

do{
    let responseData = try JSONDecoder().decode(forget_Base.self, from: Data(from: responseValue.utf8 as! Decoder))
    if responseData.code == 200
    {
        let message = isNilValue(assignValue: responseData.message)
        let alert = UIAlertController(title: "", message: message, preferredStyle: .alert)
        let action = UIAlertAction(title: "OK", style: .default, handler: {(_action) -> Void in
            let next = self.storyboard?.instantiateViewController(withIdentifier: "SetPasswordVCSID")
            self.navigationController?.pushViewController(next!, animated: true)
        })
        alert.addAction(action)
        self.present(alert, animated: true, completion: nil)
    }
    else
    {
    }
}
catch
{
    print("error")
}

Как я могу решить это? Я уже перепробовал слишком много вещей, но я застрял с этим.

Ответы [ 2 ]

1 голос
/ 29 мая 2019

Согласно сообщению об ошибке это просто

let responseData = try JSONDecoder().decode(forget_Base.self, from: Data(responseValue.utf8))

Тип, приведенный к Decoder, в любом случае бессмыслен.

И, пожалуйста, соблюдайте соглашение об именах, forget_Base ужасно, назовите его ForgetBase

0 голосов
/ 29 мая 2019

Используйте responseValue как есть. Вот код: изменить следующее

let responseData = try JSONDecoder().decode(forget_Base.self, from: Data(from: responseValue.utf8 as! Decoder))

до

let responseData = try JSONDecoder().decode(forget_Base.self, from:responseValue)

...