2009-07-13 6 views
0

Safari에서 URL을 시작하는 것은 iPhone 애플리케이션에서 쉽게 할 수 있습니다 (UIApplication의 openURL 메소드).NSMutableURLRequest와 OAuth를 사용하여 iPhone 앱에서 Safari 실행하기

그러나 OAuth 관련 작업을하고 있고 pattern that pownce used to handle OAuth을 따르고 싶습니다. 그러나 OAuth wants me to explicitly set the Authorization header 이래로, 어떻게 진행 해야할지 모르겠습니다. NSMutableURLRequest 통해 헤더를 설정할 수 있습니다 ...하지만 어떻게 내 애플 리케이션 UIApplication 메서드에 전달할 수있는 NSURL 만들기로 변환합니까?

답변

2

서버 간 상호 작용 중에 Consumer에서 Service Provider로 OAuth 매개 변수를 전달하는 권장 방법은 HTTP Authorization 헤더를 사용하는 것입니다. 그러나 사용자가 소비자에 의해 서비스 제공자에게 리디렉션 될 때 OAuth는 실제로 HTTP GET 요청이 사용되어야한다고 지정합니다 (6.2.1 절, b/c를 연결할 수 없습니다. 나는 새로운 사용자이고 하나만 게시 할 수 있음). 하이퍼 링크 - 매우 짜증나는 StackOverflow). 따라서 모바일 사파리에 NSURL 요청을 전달할 필요가 없습니다. 설명 된대로 URL을 열면됩니다.

iPhone에서 전체 OAuth 플로우의 코드 예제를 보려면 sample FireEagle app I wrote을 확인하십시오. 그것은 Pownce 응용 프로그램과 거의 같은 방식으로 구현되었습니다.

+0

마이크에 chiming을 주셔서 감사합니다. – bpapa

0

iPhone 애플리케이션에서 OAuth 지원을 구현하는 일반적인 방법은 웹 시트가있는 모달 시트를 제공하는 것입니다. 이를 통해 사용자 정의 헤더와 함께 NSURLRequest를 사용할 수 있습니다.

+0

이것은 사실이지만 OAuth의 정신에 위배되어 페이지를 자신의 응용 프로그램 안에 표시합니다. – bpapa

관련 문제