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

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

1답변

  • 좋아요

    1

    싫어요
    채택취소하기

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

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

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

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

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

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

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

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

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

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

ᕕ( ᐛ )ᕗ
로그인이 필요합니다

작성한 답변에 다른 개발자들이 댓글을 작성하거나 댓글에 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.