Быстрое время анализа сообщения об ошибке с дополнительными обратными косыми чертамиIOS

Программируем под IOS
Ответить
Anonymous
 Быстрое время анализа сообщения об ошибке с дополнительными обратными косыми чертами

Сообщение Anonymous »

Я работаю над проектом SwiftUI, в котором мне нужно отправить строку вызова определенного формата даты в API и получить от него ответ.
Код выглядит следующим образом: р>
func createProfile(birthday: String, email: String, fullName: String, gender: String, completion: @escaping (Result) -> Void) {

guard let url = URL(string: "*******") else {
completion(.failure(.invalidURL))
return
}

var request = URLRequest(url: url)
let defaults = UserDefaults.standard
guard let token = defaults.string(forKey: "jsonwebtoken") else {
return
}
request.httpMethod = "POST"
request.setValue("Bearer \(token)", forHTTPHeaderField: "Authorization")
request.setValue("application/json", forHTTPHeaderField: "Content-Type")
let body: [String: String] = [
"birthday" : "02/01/2022",
"email": email,
"fullName": fullName,
"gender": gender
]
request.httpBody = try? JSONSerialization.data(withJSONObject: body, options: .fragmentsAllowed)
print(body)

URLSession.shared.dataTask(with: request) { data, response, error in
guard let data = data, error == nil else {
completion(.failure(.noData))
return
}
guard let profile = try? JSONDecoder().decode(ProfileResponse.self, from: data) else {
completion(.failure(.decodingError))
return
}
print(profile)
completion(.success(profile.activationStatus))

}.resume()
}

Без регистрации код просто не работает, и приложение работает нормально со следующими операторами печати:
print(String(data: data, encoding: .utf8))

Журналы консоли:
Optional("{\"errors\":{\"message\":\"parsing time \\\"\\\\\\\"02\\\\\\\\/01\\\\\\\\/2022\\\\\\\"\\\" as \\\"\\\\\\\"02/01/2006\\\\\\\"\\\": cannot parse \\\"\\\\\\\\/01\\\\\\\\/2022\\\\\\\"\\\" as \\\"/\\\"\"}}\n")

Также при печати тела запроса все происходит так, как ожидалось:
["birthday": "02/01/2022", "fullName": "Samy", "email": "hello.world@gmail.com", "gender": "Male"]


Подробнее здесь: https://stackoverflow.com/questions/724 ... ackslashes
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»