2011-02-17 2 views
4

클라이언트 측에서 eTag를 처리하는 방법에 대해 알고 싶습니까? 우리는 응용 프로그램에서 서버에서 오는 이미지로 eTags를 사용할 계획입니다. ETAG이 참조하십시오 무엇인지에 대한iPhone에서 eTags 처리

: 당신이 요청에 대한 귀하의 연구를 위해 http://en.wikipedia.org/wiki/HTTP_ETag

답변

6

시작 포인트를 ...

NSMutableURLRequest 여기

당신은 ETAG 값을 설정할 수 있습니다.

[self addValue:eTag forHTTPHeaderField:@"If-None-Match"]; 

이 요청은 NSURLConnection과 함께 사용할 수 있습니다. 당신의있는 NSURLConnection의

NSURLConnectionDelegate

대표는 ... 귀하의 경우 응답이 NSHTTPURLResponse입니다

- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response 

을 ... 방법이있다. 당신은 다른 대리인의 방법 응답에 statusCode을 확인해야

...

- (void)connectionDidFinishLoading:(NSURLConnection *)connection 

... 원격 개체가 수정되지 않은 경우 상태 코드 (304)가 수신된다. 원격 개체가 수정되고 eTag가 지원되면 [response allHeaderFields]에서 찾을 수 있습니다.

+2

나는'-connectionDidFinishLoading :'에서 상태 코드를 체크인하는데 동의하지 않을 것이다. 응답이 도착하자마자 바로 확인할 수 있으므로 코드가 예기치 않은 경우 연결을 즉시 취소하거나 처리 할 수 ​​있습니다 –