C에서 웹 서버를 구현하려고합니다. 루프에서 send 명령을 사용하여 요청에 대한 응답을 보내고 있습니다. send 함수를 사용하여 루프에서 응답 보내기
buf_len = 1;
while (buf_len > 0)
{
buf_len = read(fh, out_buf, BUF_SIZE);
if (buf_len > 0)
{
send(client_s, out_buf, buf_len, 0);
}
}
나는
'\0'
에 의한
char out_buf[BUF_SIZE]
의 마지막 문자를 종료해야합니다. 또한 동일한 코드로 png 파일을 보내려고 할 때 가끔 전체 이미지를받으며 때로는 절반 만 수신합니다. 페이지를 새로 고침하면 완전히로드됩니다. 송신 기능에 대한
0으로 끝낼 필요가 없습니다. –
@CharlieBurns 두 번째 파트 2에 대답 해 주시겠습니까? 페이지가 한두 번 새로 고쳐 질 때만 일부 이미지가 표시되고 이미지가 완성되는 이유는 무엇입니까? – rdp