Я новичок в SwiftUI, и у меня возникли проблемы с публикацией запроса API. Я все проверил, но все равно получаю сообщение об ошибке сервера 500. Я застрял на этом, пожалуйста, помогите, если возможно.
Данные ответа:
Server Error (500)
Server Error (500)
Ошибка анализа JSON: Error Domain=NSCocoaErrorDomain Code=3840 «Недопустимое
значение в строке 2, столбец 0». UserInfo={NSDebugDescription=Invalid
значение вокруг строки 2, столбец 0., NSJSONSerializationErrorIndex=1}
Мой код: do{
// Define the data to be sent
let data: [String: String] = [
"ad_id": "00000000-0000-0000-0000-000000000000",
"device_id": "EE07C4CF-53CB-49D7-9991-111111111111",
"device_token": "NOTFOUND"
]
let encoder = JSONEncoder()
// Convert the data dictionary to JSON data using JSONEncoder
let jsonData = try encoder.encode(data)
// Define the User-Agent header value
let userAgentHeader = ["User-Agent": "Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148"]
// Convert User-Agent header dictionary to JSON string
guard let headerData = try? JSONSerialization.data(withJSONObject: userAgentHeader, options: []),
let headerJSON = String(data: headerData, encoding: .utf8) else {
print("Failed to convert User-Agent header dictionary to JSON string")
return
}
// Create the request
var request = URLRequest(url: url)
request.httpMethod = "POST"
// Define the headers dictionary
let headers: [String: String] = [
"Content-Type": "application/json",
"User-Agent": "Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148"
]
// Add the headers to the request
for (key, value) in headers {
request.setValue(value, forHTTPHeaderField: key)
}
request.httpBody = jsonData
if let reqString = String(data: jsonData, encoding: .utf8) {
print("paramater data: \(reqString)")
}
// Perform the request using URLSession
URLSession.shared.dataTask(with: request) { data, response, error in
// Handle the response
if let error = error {
print("Error: \(error)")
return
}
// Handle the data
guard let data = data else {
print("No data received")
return
}
// Print the data as a string to see what you received
if let responseString = String(data: data, encoding: .utf8) {
print("Response data: \(responseString)")
}
// Parse the response data
do {
// Try parsing the JSON with allowFragments option
let json = try JSONSerialization.jsonObject(with: data, options: [.mutableContainers, .allowFragments])
print("Response JSON: \(json)")
} catch {
print("Error parsing JSON: \(error)")
}
}.resume()
} catch {
// Handle the encoding error
print("Error encoding data to JSON: \(error)")
}
Подробнее здесь: https://stackoverflow.com/questions/783 ... rsing-json
Я столкнулся с ошибкой при выполнении запроса POST API: «Ошибка анализа JSON». ⇐ IOS
Программируем под IOS
1712901079
Anonymous
Я новичок в SwiftUI, и у меня возникли проблемы с публикацией запроса API. Я все проверил, но все равно получаю сообщение об ошибке сервера 500. Я застрял на этом, пожалуйста, помогите, если возможно.
Данные ответа:
Server Error (500)
Server Error (500)
Ошибка анализа JSON: Error Domain=NSCocoaErrorDomain Code=3840 «Недопустимое
значение в строке 2, столбец 0». UserInfo={NSDebugDescription=Invalid
значение вокруг строки 2, столбец 0., NSJSONSerializationErrorIndex=1}
Мой код: do{
// Define the data to be sent
let data: [String: String] = [
"ad_id": "00000000-0000-0000-0000-000000000000",
"device_id": "EE07C4CF-53CB-49D7-9991-111111111111",
"device_token": "NOTFOUND"
]
let encoder = JSONEncoder()
// Convert the data dictionary to JSON data using JSONEncoder
let jsonData = try encoder.encode(data)
// Define the User-Agent header value
let userAgentHeader = ["User-Agent": "Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148"]
// Convert User-Agent header dictionary to JSON string
guard let headerData = try? JSONSerialization.data(withJSONObject: userAgentHeader, options: []),
let headerJSON = String(data: headerData, encoding: .utf8) else {
print("Failed to convert User-Agent header dictionary to JSON string")
return
}
// Create the request
var request = URLRequest(url: url)
request.httpMethod = "POST"
// Define the headers dictionary
let headers: [String: String] = [
"Content-Type": "application/json",
"User-Agent": "Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148"
]
// Add the headers to the request
for (key, value) in headers {
request.setValue(value, forHTTPHeaderField: key)
}
request.httpBody = jsonData
if let reqString = String(data: jsonData, encoding: .utf8) {
print("paramater data: \(reqString)")
}
// Perform the request using URLSession
URLSession.shared.dataTask(with: request) { data, response, error in
// Handle the response
if let error = error {
print("Error: \(error)")
return
}
// Handle the data
guard let data = data else {
print("No data received")
return
}
// Print the data as a string to see what you received
if let responseString = String(data: data, encoding: .utf8) {
print("Response data: \(responseString)")
}
// Parse the response data
do {
// Try parsing the JSON with allowFragments option
let json = try JSONSerialization.jsonObject(with: data, options: [.mutableContainers, .allowFragments])
print("Response JSON: \(json)")
} catch {
print("Error parsing JSON: \(error)")
}
}.resume()
} catch {
// Handle the encoding error
print("Error encoding data to JSON: \(error)")
}
Подробнее здесь: [url]https://stackoverflow.com/questions/78310754/im-encountering-an-error-with-my-post-api-request-error-parsing-json[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия