api가 공개되지 않은 서버에는 어떤 방식으로 로그인을하나요?


공개된 api가 없는 서버에는 어떤 방법으로 로그인을 하는지 궁금합니다 예를들어 login.php파일에 파라미터로 id와 pw를 보낸다고하면, 그 이후에는 어떻게 처리를 해줘야 하나요?

  • 2016년 04월 26일에 작성됨

조회수 265


1 답변


좋아요
1
싫어요
채택취소하기

API가 없다는 말이, 일반 Web Page에 로그인을 하신다는거죠?

보통 웹 페이지들은 cookie를 기반으로 로그인을 처리합니다.

ID/PW를 사용해서 로그인 처리가 끝나게 되면 응답 헤더에 로그인 토큰에 해당하는 쿠키가 함게 내려옵니다.

서버는 해당 쿠키를 사용해서 사용자의 로그인 여부를 식별합니다.

다시 말하면 해당 처리를 에뮬레이션 해 주면 로그인 처리를 할 수 있다는 이야기 입니다.

로그인 후 다음 요청 헤더에 응답받은 쿠키를 함께 전송하면 간단한 사이트들은 대부분 처리가 되니다.

p.s: Naver나 Daum과 같이 큰 규모의 사이트들은 조금 더 복잡하게 처리해야 합니다.

자세한 내용은 아래 링크 참조해 보세요.

http://stackoverflow.com/questions/6432970/jsoup-posting-and-cookie

  • 2016년 04월 26일에 수정됨
    프로그래밍 언어를 좋아하는 프로그래머
  • 2016년 04월 26일에 작성됨
    프로그래밍 언어를 좋아하는 프로그래머

  • 답변을 참고해서 로그인해서 얻은 cookie를 저장한 후 다른 웹페이지에 요청해서 성공적으로 결과를 받았습니다. 그런데 request결과가 script language= 'JavaScript'> location.replace... 로 넘어오는데 이것을 뷰에 그릴수 있는 데이터로 바꿀수 있는 방법이 있을까요 ? 웹뷰는 사용하지 않고 recyclerview를 사용하고 있습니다.    JG   2016.4.26 20:29     
  • 로그인 처리가 정확하게 된 것인지 먼저 확인해 보시고요(쿠키와 함게 요청한 것과 아닌것의 결과 비교 ) 잘 되었다면 `location.replace(url)` 에서 적혀있는 `url`을 해당 쿠키와 함께 다시 요청해 보시면 될 것 같습니다.     정대원   2016.4.26 20:50     

로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close