2016-08-10 3 views
-1

나머지 API를 사용하여 내 웹 응용 프로그램에 로그인하는 Android 앱을 만들고 싶습니다. 브라우저에서 우리는 서버가 사용자와 세션을 식별/유지하는 데 사용하는 쿠키 개념을 가지고 있습니다.API를 사용하여 Android에서 브라우저 로그인을 시뮬레이트하는 방법

안드로이드에서 어떻게 수행할까요?? 응답으로 서버에서 보낸 토큰 (처음 자격 증명을 확인할 때) 토큰 개념이 있고 리소스 (보호 된)에 액세스하려고 할 때마다 Android 앱이이를 서버로 보내야한다는 말을 들었습니다. 그래서, 그것을하는 더 좋은 방법은 무엇입니까?

클라이언트가 자원을 요청할 때 토큰의 유효성을 검사해야합니까?

+0

[this] (http://www.androidhive.info/2015/08/android-adding-sms-verification-like-whatsapp-part-2/) 자습서를 완료했을 수 있습니까? –

+0

클라이언트가 자원을 요청할 때'토큰을 몇 번이고 다시 검증하는 것 '의 문제점은 무엇입니까? 들어오는 요청을 인증하는 다른 방법은 없습니다. – fiddler

답변

0

솔직히, 나는 이것을하는 더 좋은 방법을 생각할 수 없다. 토큰 기반 인증은 RESTful API를 처리 할 때 꽤 표준적인 것으로 보인다. 네가 할 수없는 이유가 있니?

서버 코드를 변경하지 않으려는 경우 보내는 모든 요청에 ​​쿠키 헤더를 추가하여 시뮬레이션 할 수 있습니다. 그러나 이것은 기본적으로 위에서 언급 한 것과 똑같습니다. 단지 깨끗한 것은 아닙니다.

그리고 브라우저가 이미 유효성을 검사하기 위해 토큰을 계속 보내고 있습니다. 모든 요청에는 모든 요청에 ​​대해 웹 응용 프로그램을 통해 유효성이 검사되는 쿠키 헤더가 있으므로 큰 문제는 아닙니다.

그리고이 작업을 수행하기 위해 Android 관련 정보가 필요하지 않습니다. 어떤 http 라이브러리를 사용하든 호출 할 수있는 메소드가 있거나 사용자 정의 헤더를 설정하기 위해 대체 할 수있는 메소드가있을 것입니다. 이를 사용하여 필요한 모든 요청에 ​​대해 쿠키 헤더 또는 토큰 헤더를 설정하십시오.

+0

예, 서버 측에서는 스프링 보안과 같은 보안 플러그인을 사용하는 것과 대조적으로 모든 컨트롤러/액션에 대해 반복해서 확인해야합니다. –

+0

서버에서 어떤 기술을 사용하고 있습니까? 모든 요청에 ​​대해 명시 적으로 그렇게해서는 안됩니다. – arjabbar

+0

서버 측에서 grails, groovy를 사용하고 있습니다. –

관련 문제