2012-02-10 4 views
2

그래서 json 이미지 데이터 base64를 전송하는 레일 앱이있는 것이 좋습니다. json 전송하지만 ios 응용 프로그램에서 데이터 값에 액세스하려고하면 null로 다시 온다. 여기에 JSON 다시RESTkit을 사용하여 소비하기 위해 base64 이미지 데이터를 ios 앱에 전달하십시오.

[{"profile_pic": "/9j/4AAQSkZJRgABAQEASABIAAD/2wBDAAUDBAQEAwUEBAQFBQUGBwwIBwcH...... 
    ....... many more lines etc etc................................................... 
+p/Ob9Xrf6D8po/hOhI4U5SSm4Es8vUE/riYmJj2B0iefbkz/2Q==" }] 

Restkit을 온다 내가 너무 메신저 accessable 한 것입니다 nslog 때이

[userMapping mapKeyPath:@"profile_pic" toAttribute:@"profilePic"]; 
NSLog(@"people id %@",[[objects objectAtIndex:0]profilePic ]); 
//and it comes back as null 
2012-02-09 20:08:48.073 ConnecTest[78232:207] profile_pic (null) 

다른 모든 값처럼 매핑되는

{ 
"profile_pic": "<%= Base64.encode64(File.read('/Users/rui_y/connect_Me2/public'+  
@user.avatar_photo_url(:thumb)).gsub("\n", '')) %>", 
} 

내 레일 코드, 코드는 이 데이터를 매핑하는 방법이 궁금합니다.

+0

왜 Base64로 인코딩합니까? JSON 응답에서 이미지 링크를 사용한 다음 HTTP를 통해 해당 링크에서 직접 이미지를 가져 오는 것을 고려 했습니까? –

+0

글쎄, 내가 더 빨리 될 것이라고 생각하고 더 나은 효율성을 가지고 있지만, 나는 http를 통해 링크를 가져 오는 것에 의존해야 할 것 같아요. –

답변

0

모든 문자열 에서처럼 매핑 할 수 있습니다.

나는 내 코드에서 이것을 가지고,하지만 난 키/값 개체의 목록지도 :

매핑 :

listMapping = [RKObjectMapping mappingForClass:[VOKeyValue class]]; 
[listMapping mapKeyPath:@"value" toAttribute:@"value"]; 
[listMapping mapKeyPath:@"key" toAttribute:@"key"]; 
[[RKObjectManager sharedManager].mappingProvider setMapping:listMapping forKeyPath:@"list"]; 

값 개체 :

@interface VOKeyValue : NSObject 
{ 
    NSString * key; 
    NSString * value; 
} 

@property (nonatomic, retain) NSString * key; 
@property (nonatomic, retain) NSString * value; 

@end 

요청 :

[[RKObjectManager sharedManager] loadObjectsAtResourcePath:@"yourResourceURL..." delegate:self]; 

내 Ca llBack 기능 :

VOKeyValue*img=[objects objectAtIndex:0]; 
if (![img.key isEqualToString:@"image"]) { 
    img=[objects objectAtIndex:1]; 
} 

마지막으로 나는이 JSON을 매핑 할 수 있습니다 :

{"list":[{"key":"image","value":"/9j/4AATSkZJRgABAgIAAAAAAAAAAAD/wAARCADwAUADASEAAhEBAxEB/....YFJCPAP/ZAAA="},{"key":"other","value":"xxxx..."}]} 

나는 나의 exemple 당신을 도울 수 있기를 바랍니다.

+0

thnx 전체 무리 =] –

+0

당신의 문제가 해결 되었습니까? – Beber

+0

꽤 아직, 그냥 귀하의 제안에 시작하고 그것과 같은 방식으로 매핑 된 것으로 보인다 내 프로필 클래스에 내 사용자 클래스에 입력 된 문자열로 및 해당 profile_pic 매핑 된 귀하의 값처럼, 나는 다른 특성이 있습니다. 매핑 및 그들은 모두 작동하는 프로필 그림은 작동하지 않는 \ \ ... ohh 한 다른 질문 만약 당신이 어떻게 다른 사진의 배열을 매핑 할 수 있습니까? 같은 난 –

관련 문제