web과 소켓통신 연동하기.
글쓴이: shean0 / 작성시간: 금, 2004/02/06 - 5:23오후
안녕하세요..
문의드릴것이있어서 이렇게 글을 적게 되었습니다.
예를 들자면. 웹에서
www.AAA.com/HTTP_SEND.asp 이란 페이지에서
<html> <head> <title> 테스트</title> <SCRIPT language="JavaScript"> <!-- function check_it(form){ form.submit(); } //--> </SCRIPT> </head> <body> <table> <FORM ACTION="www.AAA.com/HTTP_SEND.asp" METHOD="POST" name="form1"> <tr> <td width = "115"><font color = "blue"><b>USR_ID</b> </font></td> <td><input name=USR_ID size = 30 maxsize = 30 type="text"></td> </tr> <tr> <td> <INPUT TYPE="button" VALUE="캐릭터전송 테스트" onClick="javascript:check_it(this.form);"></td> </td> </tr> </form> </table> </body> </html>
입력박스 안에 스트링[name]을 입력한 경우,
이것을 소켓으로 구현하자면
int send_Web(char *data) { sok=socket("www.AAA.com",80); 80으로 연결하고, sprintf(data_sev,"POST /HTTP_SEND.asp?name=%s",data); send(sok,data_sev); read(sok,data_rev); return TRUE; }
html 에서 이렇게 ENCTYPE="multipart/form-data" (파일첨부하고자 할때) 추가될때.. 그림파일을 어떻게 sprintf(buf,%s,그림파일);로 추가하는지가 막막한요.
이와 관련해서.. web통신을 소켓으로 변환하는 모듈이나.. 문서 파싱하는 부분등..에 관해서조언을 구하고자 합니다.
일단 아파치 서버가 없는곳에서 test_server_listen.c 를 짜고서 이것을 80으로 바인딩시켜서.. PC 웹에서 80으로 쏘면 , 이 데이터를 모두 받고 분석하려니..
80이 할당이 안되네요...조언을 부탁드립니다.
Forums:
[quote="shean0"]이와 관련해서.. web통신을 소켓으로 변환
보통 통신프로그램 작성하시듯 하시면 됩니다.
문서 파싱하는 부분은 lynx나 기타 텍스트 브라우져의 소스를 참고하시면 될겁니다. RFC도 참고 하시구요.
이 부분도 RFC에 언급되어 있고, 인코딩해서 보내는 것으로 기억합니다.
http://www.ietf.org/rfc/rfc2616.txt
To be a rich
댓글 달기