게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
소켓으로 웹접속하기
게시물ID : programmer_4367짧은주소 복사하기
작성자 : 홀롤롤럴로
추천 : 0
조회수 : 392회
댓글수 : 2개
등록시간 : 2014/07/05 12:02:58
#include<stdio.h>
#include<WinSock2.h>
#pragma comment(lib,"ws2_32.lib")
int main(void)
{
SOCKET server;
SOCKADDR_IN saddr;
char arr[]="GET / HTTP/1.1\r\n"\
"Accept: text/html, application/xhtml, */*\r\n"\
"Host: www.naver.com\r\n"\
"Connection: Keep-Alive\r\n";
FILE *fp=fopen("c:\\test.txt","w");
char fak[2048];
int sz;
struct hostent *host;
WSADATA wsadata;
WSAStartup(MAKEWORD(2,2),&wsadata);
server=socket(PF_INET,SOCK_STREAM,0);
host=gethostbyname("www.naver.com");
memset(&saddr,0,sizeof(saddr));
saddr.sin_family=AF_INET;
saddr.sin_addr.s_addr=inet_addr(inet_ntoa(*(struct in_addr*)host->h_addr_list[0]));
saddr.sin_port=htons(80);
printf("%s\n",inet_ntoa(*(struct in_addr*)host->h_addr_list[0]));
if(connect(server,(SOCKADDR *)&saddr,sizeof(saddr))==SOCKET_ERROR)
printf("err\n");
if(0>=send(server,arr,sizeof(arr),0))
printf("err");
while(sz=recv(server,fak,1024,0)){
if(sz==0)
break;
fputs(fak,fp);
printf("%s",fak);
}
return 0;
}
소켓으로 웹서버에 접속하고싶은데 GET문장에서 없는경로로 요청하면 오류는 잘나오는데
올바른 경로로 요청을 하면 자꾸 recv에서 블로킹이 걸립니다. 제 머리로는 도저히 왜이런지
이유를 모르겠네요 오류좀 잡아주시면 감사하겟습니다
전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호