Я пытаюсь получить доступ к первому результату из этого запроса: https://www.instagram.com/web/search/topsearch/?query=_myUsername
Я могу получить объект JSON следующим образом:
var request = URLRequest(url: URL(string: api)!)
request.httpMethod = "GET"
let task = URLSession.shared.dataTask(with: request) { data, response, error in
guard let data = data, error == nil else { // check for fundamental networking error
print("error=\(error ?? "" as! Error)")
return
}
do {
let jsonResponse = try JSONSerialization.jsonObject(with: data, options: []) as? [String: Any]
completionHandler(jsonResponse,nil)
} catch let parsingError {
print("Error", parsingError)
}
if let httpStatus = response as? HTTPURLResponse, httpStatus.statusCode != 200 { // check for http errors
print("statusCode should be 200, but is \(httpStatus.statusCode)")
print("response = \(String(describing: response))")
}
}
task.resume()
Результатом являетсяJSON-объект, который пропускает первого пользователя в «users».Например, если я анализирую объект JSON, чтобы получить имя пользователя первого пользователя в результате, подобном этому ...
if let users = jsonResponse!["users"] as? [Any] {
if let first = users.first as? [String: Any] {
if let user = first["user"] as? [String: Any] {
self.igUser = user["username"] as! String
... Он возвращает имя пользователя 'position = 1',в то время как я на самом деле хочу пользователя 'position = 0'.Я неправильно разбираю это?