URLRequest - «Тема 1: Неустранимая ошибка: неожиданно обнаружен ноль при развертывании необязательного значения» Ошибка (Swift) - PullRequest
0 голосов
/ 20 сентября 2019

Я пытаюсь выполнить HTTP-запрос POST в swift, который отправит некоторые данные на мой сервер, используя файл PHP, но он вылетает с ошибкой

Поток 1: Неустранимая ошибка: Неожиданно найдено нольпри развертывании необязательного значения

token и selectedAreaNames (ошибка в первой строке) являются обычными строками.В чем может быть проблема?

let url = URL(string: "https://xxxxxxx.xxx/register.php/\(token)|\ (selectedAreaNames)")! //error is here...
var request = URLRequest(url: url)
request.httpMethod = "POST"
let task = URLSession.shared.dataTask(with: request) { (data, response, error) in
    if let error = error {
        print("error: \(error)")
    } else {
        if let response = response as? HTTPURLResponse {
            print("statusCode: \(response.statusCode)")
        }
        if let data = data, let dataString = String(data: data, encoding: .utf8) {
            print("data: \(dataString)")
        }
    }
}
task.resume()

1 Ответ

0 голосов
/ 21 сентября 2019

Предполагая, что именно так должен выглядеть ваш URL, вы можете сделать следующее:

let url = URL(string: "https://xxxxxxx.xxx/register.php")!
    .appendingPathComponent(token + "|" + selectedAreasNames)

Это будет в процентах от тех частей URL (включая |).


* 1007Как уже было сказано, это чрезвычайно необычный формат для запроса POST, в котором обычно данные размещаются внутри тела запроса, а не просто добавляются в качестве другого компонента пути URL.И если бы это был запрос GET, в котором параметры добавляются к URL-адресу, вы обычно видите это после ? в URL-адресе, отделяя путь запроса от запроса.И эта структура просто TOKEN|VALUES также является необычной структурой запросов.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...