2010-02-11 1 views
0

로그인을 위해 내 응용 프로그램에서해야 할 일은 토큰과 함께 XML을 반환하는 user/pass로 HTML 요청을 수행하는 것입니다. 토큰은 나중의 http 요청에서 사용됩니다.iPhone 응용 프로그램에서 로그인 프로세스 (이 경우 서버에서 토큰 받기)를 수행하는 방법과 위치는 어디입니까?

나는 HTTP 요청을 수행하는 방법과 이들을 구문 분석하는 방법을 알고있다. 테스트 목적으로 하드 코딩 된 토큰을 사용하여 이미이를 수행했다. 나는이 작업을 수행해야 어디에 응용 프로그램이 시작할 때 이런 일이하려는 경우

NSString* settingValue = [[NSUserDefaults standardUserDefaults] stringForKey:@"<Setting Key>"] 

질문입니다 : 나는 또한이 방법을 통해 비밀번호의 입력과 retreval 수 있도록 응용 프로그램 환경 설정을 사용하여 밖으로 일이? 내 애플리케이션이 사용자에게 피드백을주지 않고 시작될 때 애플리케이션이 멈추는 것을 원하지 않는다. 사용자/패스 세트가 없거나 서버에 의해 거부 된 경우 알 수있다. 당신의 충고는 무엇입니까? 감사합니다

답변

0

내가 개발중인 앱에서 첫 번째보기에서 별도의 스레드에서 수행합니다. 이렇게하면 UI가 잠기지 않습니다. 또한 진행보기 바의 진행 상태를 다시보고 할 수 있도록 기본보기의 대리자로도 작업을 수행합니다. 나중에 나는 슬라이드가 보이는 것처럼 보일 것입니다. 그래서 그 사람은 인증이 필요하지 않은 앱의 일부를 사용할 수 있습니다.

IMO 앱 위임자에서 인증을 수행하는 데 몇 초 정도 걸릴 수 있으며이를 사용자에게 쉽게보고 할 수 없습니다.

인증을 처리하는 가장 좋은 방법은 HTML 요청을 사용하는 것처럼 쿠키를 사용하는 것입니다. 인증을 수행 한 클래스뿐만 아니라 NSHTTPCookieStorage 앱을 사용하여 이러한 쿠키를 검색 할 수 있습니다. 토큰을 계속 사용하려면 응용 프로그램 대리인 클래스 (myApplicationAppDelegate.h)

PS에 전역 변수를 만들 수 있습니다. NSUserDefaults에 사용자 이름과 암호를 저장하지 않으므로 장치의 일반 텍스트로 저장됩니다 . 대신 키 체인을 사용하십시오.

+0

일단 다른 토큰에 액세스 할 수있게 토큰을 저장하면 어떻게됩니까? 앱 위임자인가요? – startoftext

+0

내 프로젝트에서 토큰을 반환하지 않아도 사용자가 인증했는지 확인하지만 NSHTTPCookieStorage라는 App 전체 저장소 영역에 저장된 쿠키 – Rudiger

+0

세션 데이터를 저장하기 위해 AppViewController에서 전역 변수를 유지할 수 있습니다. 다른 뷰는 뷰 사이를 이동할 때마다 새로운 뷰가 AppViewController에서 만들어지기 때문입니다. – pMan

관련 문제