2010-03-30 10 views
3

NSMutableURLRequest에 소문자 헤더 필드를 추가하는 방법을 생각해 보면 꽤 실망하게됩니다.소문자 필드를 NSURLRequest 헤더 필드에 추가하는 방법은 무엇입니까?

NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:MyURLString]]; 
[urlRequest setValue:@"aValue" forHTTPHeaderField:@"field"]; 

위의 예에서 헤더 필드 이름은 대소 문자를 구분하지 않으므로 "필드"는 "필드"로 전환됩니다. 나는 이것이 일어나서는 안된다고 생각할 것이다. 내가 작업하고있는 API는 대소 문자를 구별하므로 GET 요청은 무시됩니다. 케이스 스위치를 무시할 수있는 방법이 있습니까?

답변

2

HTTP 헤더 필드는 supposed to be case insensitive이므로 API를 수정해야합니다.

+0

또는 제 3 자에게 해결하도록 요청하십시오. –

+0

@ 프랭크 또는 그. –

+0

글쎄, 나는 그들의 지원을 이메일로 보내고 내가 얼마나 멀리 있는지 볼거야! 내 요청의 사례를 변경하는 방법이있을 것으로 기대했지만 케이스 전환을 피할 수있는 방법을 찾지 못했습니다. 감사! – Drewsmits

2

블로그 게시물을 다음 주제에 작성했습니다 : Fixing -[NSMutableURLRequest setValue:forHTTPHeaderField:] 읽으시 길 바랍니다. 이 문제를 해결하는 방법과 해결해야하는 이유를 배웁니다.

+0

그 주제에 관한 훌륭한 기사입니다.하지만 여기에 귀하가 진술 한 내용을 요약하여 답을 얻으시겠습니까? 이 기사에 대한 링크가 끊어 질 경우 가능한 한 많은 정보를 얻고 자합니다. 우리는 사이트 연령대에 대한 더 많은 것을보기 시작했습니다. –

0

addValue (_ : forHTTPHeaderField :)로 시도해주세요.

NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL: 
[NSURL URLWithString:MyURLString]]; 
[urlRequest addValue:@"aValue" forHTTPHeaderField:@"field"];