2012-08-13 3 views
0

현재 MKNetworkKit을 사용하여 편안한 서버에서 여러 이미지를 다운로드합니다. 이미지에 대한 보충 정보를 얻기 위해 핑 (ping)하는 또 다른 편안한 서비스가 있습니다. 어느 서버 I 핑 처음 작동하지만 다음과 같은 오류 얻을 두 번째 서버에 ping을 때 :MKNetworkKit의 여러 하위 클래스를 갖는 방법은 무엇입니까?

[The operation couldn’t be completed. (NSURLErrorDomain error 404.)] 2012-08-12 19:51:12.340 [51853:11603]

Error: Error Domain=NSURLErrorDomain Code=404 "The operation couldn’t be completed. (NSURLErrorDomain error 404.)" UserInfo=0x73c5490 {Server=Apache-Coyote/1.1, Content-Length=47, Content-Type=text/html;charset=ISO-8859-1, Connection=keep-alive, Date=Sun, 12 Aug 2012 23:51:11 GMT} 2012-08-12 19:51:12.341 [MKNetworkOperation operationFailedWithError:] [Line 1280] State: 0

MKNetworkKit이 두 번째 서버의 URL에서 데이터를 얻기 위해 시도의 첫 번째 서버를 핑됩니다. 다른 도달 가능성 객체를 만들어야한다고 생각합니까? 내가 뭘 잘못하고 있는거야? 또는 여러 하위 클래스가있는 프로젝트의 구현 예제를 어디에서 찾을 수 있습니까?

편집 는 둘 다 엔진을 다음과 같은 방법으로 구현 :

@implementation FirstEngine 

FirstEngine* _sharedEngine; 

+(FirstEngine*)sharedEngine 
{ 
    if(_sharedEngine==nil) 
    { 
     _sharedEngine = [[FirstEngine alloc] initWithHostName:@"***.**.**.**" customHeaderFields:nil];    
    } 
    return _sharedEngine; 
} 

을 그들에게 이런 식으로 호출 :

$[[FirstEngine sharedEngine] bodyForPath:url verb:verb body:params onCompletion:^(NSDictionary* body) 
{}.... 

또는

$[[SecondEngine sharedEngine] bodyForPath:url verb:verb body:params onCompletion:^(NSDictionary* body) 
{}.... 

답변

1

당신은 MKNetworkEngine 객체를 생성한다을 AppDelega에서 대화하는 "모든"서버를위한 것입니다. 당신의 apiEngine에 imageCacheEngine 및 API 요청에

self.imageCacheEngine = [[MKNetworkEngine alloc] initWithHostName:@"images.myserver.com"]; 

self.apiEngine = [[MKNetworkEngine alloc] initWithHostName:@"api.myserver.com"]; 

인큐 이미지 요청.

+0

답변 해 주셔서 감사합니다. 위에 게시 된 코드 편집을 고려하여 어떻게해야합니까? –

+0

sharedEngine을 재정의해서는 안됩니다. AppDelegate에서 엔진을 만든 후 [AppDelegate.engine imageAtURL ...]과 같은 것을 사용하십시오. – Mugunth

관련 문제