묻고답하기
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
수업료를 지불해서라도 알고싶습니다.고수분들 도와주세요
2004.05.29 15:01
fopen,fsockopen을 사용하여 특정페이지의 원하는 문자열을 가지고 오는 공부를 하고있습니다.재미가 있어서 계속 파고있습니다.
그런데 로그인후에 값을 어떻게 가져오는지를 모르겠습니다.
이리저리 계속 삽질하다가 이렇게 질문글 올립니다.
제가 찾아본 바에 의하면 header값을 조작해주면 된다고 하는데 어떻게 조작을 해야할지 너무 어렵더군요.
일단 예를 들면 http://abc.com 싸이트에서 id=userid pass=1234 이렇게 로그인을 한후에
http://abc.com/a/b.html의 내용을 가지고 오고싶습니다.
이때 로그인 페이지는 http://abc.com/login.php입니다 그래서 fsockopen이나 fopen으로 http://abc.com/login.php?id=userid&pass=1234 이렇게 읽어 오고 그후에 제가 원하는 http://abc.com/a/b.html 이페이지를 읽을려고 하는데 애시당초 로그인페이지에서부터 로그인이 안되는겁니다.
고수님들 제 무지를 깨우쳐주십시요.간단한 소스를 적어주시면 고맙겠습니다.
추가로 header를 이용하여 쿠키나 세션을 어떻게 조작할수있다고 하는데 어떻게 하는지요.
header를 이용하는 공부를 어디서 배워야하나요?책에는 안나와있는듯한데..
참고로 외국 원서나 외국싸이트 추천 말고 한글로 된싸이트나 책있으면 추천좀 해주십시요
그런데 로그인후에 값을 어떻게 가져오는지를 모르겠습니다.
이리저리 계속 삽질하다가 이렇게 질문글 올립니다.
제가 찾아본 바에 의하면 header값을 조작해주면 된다고 하는데 어떻게 조작을 해야할지 너무 어렵더군요.
일단 예를 들면 http://abc.com 싸이트에서 id=userid pass=1234 이렇게 로그인을 한후에
http://abc.com/a/b.html의 내용을 가지고 오고싶습니다.
이때 로그인 페이지는 http://abc.com/login.php입니다 그래서 fsockopen이나 fopen으로 http://abc.com/login.php?id=userid&pass=1234 이렇게 읽어 오고 그후에 제가 원하는 http://abc.com/a/b.html 이페이지를 읽을려고 하는데 애시당초 로그인페이지에서부터 로그인이 안되는겁니다.
고수님들 제 무지를 깨우쳐주십시요.간단한 소스를 적어주시면 고맙겠습니다.
추가로 header를 이용하여 쿠키나 세션을 어떻게 조작할수있다고 하는데 어떻게 하는지요.
header를 이용하는 공부를 어디서 배워야하나요?책에는 안나와있는듯한데..
참고로 외국 원서나 외국싸이트 추천 말고 한글로 된싸이트나 책있으면 추천좀 해주십시요
댓글 2
-
좋은만남
2004.05.29 15:02
몇일 밤낮을 삽질을 해도 답이 안나옵니다. -
앳플군
2004.05.29 18:23
일단, 웹 브라우저와 작동 원리, 쿠키의 개념, Method 방식 중 GET와 POST의 공통점.차이점 을 공부하셔야 할 것으로 보입니다.
사용자가 정상적으로 로그인 해서 회원제 페이지를 요청하는 부분을 간단하게 설명하자면.
1) 사용자가 login 페이지를 호출한다.
2) 사용자가 ID와 PASSWORD를 입력하고, 웹 브라우저는 그것을 POST (종종 GET 방식을 쓰기도 합니다만..) 방식으로 웹 서버에 전송한다.
3) 웹 서버는 다음 페이지를 보내줄 때 "Set-Cookie" 라는 헤더 (Respone Header) 를 보내줍니다. 여기에는 세션 고유 키나 로그인 값 등이 전송됩니다.
4) 이제부터, 쿠키가 없어질때 까지 (쿠키 이용 기간이 만료되거나 서버의 강제 삭제등..) 웹 서버가 보내주었던 쿠키를 기억하고 있다가 웹 페이지를 요청할때 헤더 (Request Header) 에 쿠키를 첨부시켜서 보냅니다.
즉, 님께서 구현하셔야 할 부분은.
1) login을 처리하는 페이지에 ID와 PASSWORD를 전송한다.
2) 받아온 페이지의 헤더 (Respone Header) 를 파싱하여 "Set-Cookie" 부분을 찾는다.
3) abc.com/a/b.html 을 요청할때 헤더 (Request Header) 에 쿠키를 덧붙혀 보내준다.
.. 입니다.
* Request Header: 클라이언트에서 웹 서버로 보내는 헤더
* Respone Header: 웹 서버에서 클라이언트로 보내는 헤더