나는 내 자신의 서버 (Apache-> PHP)와 통신하는 응용 프로그램을 개발하고 내가 앱에 서버에서 PHP 코드로 간단한 JSON 사전을 보내고 :추출 값은
$aJSON = array('Result' => TRUE, 'Result_Msg' => "Success!!!");
echo json_encode($aJSON);
이러한 코드 라인
나는 키에서 값을 추출 할 : '결과'와 'Result_Msg'
// Logging the received and converted JSON/NSMutableDictionary
NSLog(@"responseDict=%@",dJSON);
BOOL b = [dJSON objectForKey:@"Response"];
NSString *string = [dJSON objectForKey:@"Result_Msg"];
NSLog(@"%@", [dJSON objectForKey:@"Response_Msg"]);
NSLog(@"%@", [dJSON valueForKey:@"Response_Msg"]);
NSLog(@"%@", [dJSON valueForKey:@"Response"]);
NSLog(@"%@", [dJSON objectForKey:@"Response"]);
그리고 내 인쇄/JSON 결과는 다음과 같다 기록 :
,responseDict = { 결과 = 1; "Result_Msg"= "사용자가 성공적으로 추가되었습니다. 메일 주소를 확인하십시오."; }
불행히도 모든 NSLog와 변수 "b"와 "string"은 (null)과 같습니다.
또한 Result는 따옴표 ("")가 없지만 따옴표 안에있는 Result와 같은 두 가지 종류의 키에 대해 혼란 스럽습니다.
누군가가 도움을 줄 수 있기를 바랍니다. 미리 감사드립니다!
EDIT :
변수 "dJSON"가 이미있는 NSDictionary (/ MutableDic)이다. 나는이 라인이 일을하고있다 :
NSError *errorJson=nil;
NSMutableDictionary* dJSON = [NSJSONSerialization JSONObjectWithData:_responseData options:kNilOptions error:&errorJson];
if (error)
{
UIAlertView *alert ....
return;
}
// --- 분석을하고 값을 추출 --- //
PHP로 생성 된 JSON입니까? json_encode()? PHP의 JSON은 따옴표로 묶인 모든 키와 값을 필요로합니다. 또한, 그것은 혼자 ";" 결국 비린내가됩니다.어쨌든, 첫 번째 단계로 JSON을 다음 형식으로 편집 해보십시오. { "Result"= "1"; "Result_Msg"= "foo"} – David162795
답변을 주셔서 감사합니다. 측면 난 그냥 이전과 같은 응답을 가지고 : responseDict = { 결과 = 1; "Result_Msg"= "성공 !!!"; } – user3191334
그런 다음 JSON 문자열이 손상됩니다. 객관적 c가 내 분야가 아니기 때문에 나는 더 이상 당신을 도울 수 없다는 것을 유감스럽게 생각합니다. – David162795