Alamofire Framework를 사용할 때 내 응답이 올바르게 구문 분석되지 않는 것 같습니다. 내가 얻은 JSON 응답에는 문자열이 아닌 것처럼 보이는 키가 몇 개 있으며 키를 참조 / 값을 얻는 방법을 모르겠습니다.
다음은 호출하는 코드의 일부입니다.
var url = "http://api.sandbox.amadeus.com/v1.2/flights/low-fare-search"
var params = ["origin": "IST",
"destination":"BOS",
"departure_date":"2014-10-15",
"number_of_results": 1,
"apikey": KEY]
Alamofire.request(.GET, url, parameters: params)
.responseJSON { (_, _, json, _) in
println(json)
}
}
이 함수가 호출되었을 때 첫 번째 섹션 출력물이 있습니다.
Optional({
currency = USD;
results = ({
fare = {
"price_per_adult" = {
tax = "245.43";
"total_fare" = "721.43";
};
restrictions = {
"change_penalties" = 1;
refundable = 0;
};
"total_price" = "721.43";
};
...
});
});
당신은 그 알 수 results
없는 "results"
,하지만 "price_per_adult"
올바른 형식입니다. 내가 놓친 단계가 있습니까? NSDictionary로 캐스팅하면 키 형식을 돕기 위해 아무것도하지 않습니다.
또한 자바 스크립트와 루비에서 동일한 엔드 포인트를 시도해 보았는데 둘 다 문제없이 돌아 왔기 때문에 문제를 일으키는 API가 아니라고 확신합니다.
그 키는 여전히 String
s이고, Dictionary
s가 println
d입니다. String
영숫자가 아닌 문자 ( _
이 경우) 가 포함 된 경우에만 인쇄 할 때 따옴표로 묶는 것처럼 보입니다 . Dictionary
API 요청에서받는 것과 유사한 것을 수동으로 생성 한 다음 인쇄하여이를 테스트 할 수 있습니다 .
let test = [
"currency": "USD",
"results": [
[
"fare": [
"price_per_adult": [
"tax": "245.43",
"total_fare": "721.43"
],
"restrictions": [
"change_penalties": 1,
"refundable": 0
],
"total_price": "721.43"
]
]
]
]
println(test)
출력 :
{
currency = USD;
results = (
{
fare = {
"price_per_adult" = {
tax = "245.43";
"total_fare" = "721.43";
};
restrictions = {
"change_penalties" = 1;
refundable = 0;
};
"total_price" = "721.43";
};
}
);
}
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다