2014-10-31 6 views
0

유니 코드 문자를 보낼 때 Apigee가이를 거부하는 것 같습니다.유니 코드 문자를 Apigee에 게시

{ 
    type = messages; 
    message = "\U00c8 \U00ea \U00fc \U00e0 \U00e3"; 
} 

을하지 않고 Apigee에 성공 응답 반환이 게시 한 후 : 나는 내가 볼 수있는있는 NSDictionary를 NSLog 경우

NSMutableDictionary *entity = [[NSMutableDictionary alloc] init ]; 
textView.text = @"È ê ü à ã" 
NSString *message = [NSString stringWithUTF8String:[textView.text cStringUsingEncoding:NSUTF8StringEncoding]]; 

[entity setObject:@"messages" forKey:@"type"]; 
[entity setObject:message forKey:@"message"]; 

AppDelegate *appDelegate = (AppDelegate *)[ [UIApplication sharedApplication] delegate]; 
ApigeeClientResponse *response = [appDelegate.dataClient createEntity:entity]; 

:

괜찮 아래의 코드를 사용하여있는 NSDictionary에 입력됩니다 특수 문자 :

{ 
    type = messages; 
    message = "E e u a a"; 
} 

어떻게 NSDictionary fr을 방지 할 수 있습니까? 이러한 문자를 인코딩하고 유니 코드 문자를 Apigee에 저장할 수 있도록하려면?

+0

많은 사람들이 이전에 해왔 던 것처럼 NSLog의 출력을 사전의 내용과 혼동하고 있습니다. NSLog는 ASCII 문자 만 출력하고 비 유니 코드 문자를 좋아하는 방식으로 표시합니다. – gnasher729

+0

만약 내가 NSLog'엔터티 [@ "메시지"]'나는 "È ê ü à" "를 반환하지만 NSLog는"\ U00c8 \ U00ea \ U00fc \ U00e0 \ U00e3 "'을 반환합니다. 게시 한 후 Apigee에서 응답을 얻었으니''E u u a a " '가 표시되므로 NSLog를 무시한 상태에서이 문자가 바뀌는 위치가 확실하지 않습니다. –

답변

1

이 문제는 최신 Apigee 버전 2.0.14에서 해결되었습니다.

0

cURL과 같이 간단한 방법으로 테스트 해 보셨습니까? iOS SDK에 문제가 없는지 확인하기 위해? 즉, 여전히 cURL에 문제가있는 경우 서버 측 스택에 문제가있는 것입니다. 문제가 보이지 않으면 SDK입니다.

+0

나는 이것에 대해 생각했다. 저장된 응답은 다음과 같습니다.'message = \ "\\ U00c8 \\ U00e1 \\ U00fc \\ U00fb \"; type = messages;'그래서 NSDictionary는 문자의 형식을 변경하고 저장하지 않는 것은''È ê ü à â "'라고 가정하고 싶습니다. –

관련 문제