내 API 쿼리가 배열에서 여러 값을 반환하고 있습니다 (아래 참조). 추가 기능을 위해 사용해야합니다. 중첩 된 값 60은 어떻게 검색합니까?중첩 된 배열에서 값을 반환하는 방법 - swift 3
내 코드 예 : let uid = value["uid"] as? String
은 uid와 name을 반환하는 데 적합합니다. 그러나 let rest = value["field_resting_bpm"] as? String
의 경우 nil을 반환합니다.
let credentialData = "\(user):\(password)".dataUsingEncoding(NSUTF8StringEncoding)!
let base64Credentials = credentialData.base64EncodedStringWithOptions([])
let headers = ["Authorization": "Basic \(base64Credentials)"]
var에 checkUserEndpoint : 문자열 = "https://example.site/ios1/user/1.json"
어떻게 중첩 된 값 '60'?
let rest = value["field_resting_bpm"] as? String'
은 API 쿼리입니다 반환이 줄을 수정 않는다
Alamofire.request(.GET, checkUserEndpoint, parameters: nil, headers: headers, encoding: .JSON)
.responseJSON { response in
guard response.result.error == nil else {
print("ran alamofire")
//got an error in getting the data, need to handle it
print("error calling GET")
print(response.result.error!)
return
}
guard let value = response.result.value else {
print("no result data received when calling GET")
return
}
// return UID
print("ran alamofire")
var datareturned = JSON(value)
print("VALUE: \(value)")
내 콘솔에 다음을 반환합니다.
uid = 1;
name = "Guest User";
"field_resting_bpm" = {
und = (
{
value = 60;
}
);
업데이트 :이 필드는 Drupal 사용자 계정 설정의 정수입니다. 나는 또한 사이트에
json으로 테스트를 위해, (그래서 문자열을 반환해야합니다) 텍스트 필드를 추가 field_rest_bpm_string라는 이름의 한 반환
"field_resting_bpm을": { "놀이": [{ "값을" "60"}]} "field_rest_bpm_string"{ "놀이": [{ "값": "65", "포맷"널 "safe_value": "65"}]}
구조를 먼저 확인하십시오. 'field_resting_bpm'은 사전입니다. 첫 번째 객체에는 "value"라는 키 값이 있고 값은 60 –
입니다. 좋은 팁입니다. 감사합니다. 그냥 확인하고 내 Drupal7 사이트 에서이 필드는 내 사용자 계정에 정수 필드 유형입니다. Int로 제안 된 코드를 변경하는 옵션을 시도하고 있습니다. 지금까지는 행운이 없습니다. Drupal 사용자 설정의 필드를 문자열로 변경하려고합니다. –