Мой код проверяет, не является ли код: "эти данные" пустыми, как я могу проверить также, существует ли сам код. Некоторые ответы могут дать мне почти пустой JSON только с отметкой времени. Так что кода var там не будет.
Или есть лучший способ сделать это? так как My JSON равно
«Переменная на основе ввода текста», что приводит к «коду», который может отсутствовать, который будет иметь «некоторую информацию» или «»
Начало сценария:
struct Variables: Decodable {
var code: String
}
typealias DecoderX = [String: Variables]
Предыдущая функция устанавливает входные данные из пользовательского текста, которые перепроверяются с базой данных, поэтому GetInfo
будет вызываться, только если установлены UserDefault
входные данные.
func GetInfo() {
let Input1 = UserDefaults.standard.string(forKey: “UserInput1”) ?? “”
let Input2 = UserDefaults.standard.string(forKey: “UserInput2”) ?? “”
let Input3 = UserDefaults.standard.string(forKey: “UserInput3”) ?? “”
print(“Input Check 1: \(Input1) \(Input2) \(Input3)”)
// URL INFO With API key hidden
let jsonTask = URLSession.shared.dataTask(with: requestURL) { data, response, error in
if response == response {
if let data = data, let body = String(data: data, encoding: .utf8) {
do {
let json = try? decoder.decode(DeocderX.self, from: data);
DispatchQueue.main.async {
print(“Input Check 2: \(json![Input1]!.code) \(json![Input2]!.code) \(json![Input3]!.code)”)
if json?[Input1]?.code != nil {
print("Good Information 1")
} else {
print("Found Nothing 1")
}
if json?[Input2]?.code != nil {
print("Good Information 2")
} else {
print("Found Nothing 2")
}
if json?[Input3]?.code != nil {
print("Good Information 3")
} else {
print("Found Nothing 3")
}
}
// rest of code not applicable