Ошибка копирования соответствующих кредитов – Swift (вызов REST API)IOS

Программируем под IOS
Ответить
Anonymous
 Ошибка копирования соответствующих кредитов – Swift (вызов REST API)

Сообщение Anonymous »

Я пытаюсь выполнить вызов REST API к концентратору универсальных устройств, чтобы включить переключатель. Кажется, что вызов проходит, однако я получаю сообщение об ошибке, в котором говорится, что мне нужны учетные данные, что имеет смысл, поскольку для входа в интерфейс необходимы учетные данные. Однако я не уверен, как заставить это работать.
Мой код следующий:
class ViewController: UIViewController {

override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
}

override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}

@IBOutlet weak var lightOn: UIButton!
@IBAction func lightOn(_ sender: Any) {

guard let url = URL(string: "http://0.0.0.0/rest/nodes/ZW002_1/cmd/DFON") else { return }

let userCredential = URLCredential(user: "admin",
password: "admin",
persistence: .permanent)

URLCredentialStorage.shared.setDefaultCredential(userCredential, for: protectionSpace)

// create URL session ~ defaulted to GET

let session = URLSession.shared

session.dataTask(with: url) { (data, response, error) in

// optional chaining to make sure value is inside returnables and not not

if let response = response {
print(response)
}

if let data = data {

// assuming the data coming back is Json -> transform bytes into readable json data

do {

let json = try JSONSerialization.jsonObject(with: data, options: [])

print(json)

} catch {

print("error")
}
}

}.resume() // if this is not called this block of code isnt executed

}

}

Я попытался собрать в Интернете пару примеров, и те, которые я видел, используют ProtectionSpace, но когда я использую его, код возвращает:
Use of unresolved identifier 'protectionSpace'

Кроме того, всякий раз, когда я запускаю симулятор, я получаю именно эту ошибку:
2017-12-26 13:28:58.656122-0600 hohmtest[6922:1000481] CredStore - performQuery - Error copying matching creds. Error=-25300, query={
atyp = http;
class = inet;
"m_Limit" = "m_LimitAll";
ptcl = http;
"r_Attributes" = 1;
sdmn = "/";
srvr = "192.168.1.73";
sync = syna;
}

{ URL:
http://192.168.1.73/rest/nodes/ZW002_1/cmd/DON/ } { Status Code: 401,
Headers {
"Cache-Control" = (
"max-age=3600, must-revalidate"
);
Connection = (
"Keep-Alive"
);
"Content-Length" = (
0
);
"Content-Type" = (
"text/html; charset=UTF-8"
);
EXT = (
"UCoS, UPnP/1.0, UDI/1.0"
);
"Last-Modified" = (
"Tue, 26 Dec 2017 11:26:15 GMT"
);
"Www-Authenticate" = (
"Basic realm=\"/\""
);
} }
error


Подробнее здесь: https://stackoverflow.com/questions/479 ... t-api-call
Ответить

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

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

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

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

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