Я использую прокси. Я мог получить ответ от сервера, но не смог отправить ответ клиенту.
Чтобы быть более подробным, я мог только отредактировать содержимое заголовка ответа, но не смог отправить тело сообщения. И веб-страница показывает «ошибка кодирования содержимого» * 1003 *
//I could sending request to server successfully.
send(connfd_to_server, request, strlen(request), 0);
//receive response from server
char res_buf[1024];
while(1){
bzero(res_buf, 1024);
if(recv(connfd_to_server, res_buf, sizeof(res_buf),0) <=0){
break; //if recv failed, then message body is finished.
} //receive response using recv
send(connfd_to_client, res_buf, strlen(res_buf));
}
Я тоже пробовал:
char* response = (char*)malloc(strlen(res_buf));
char* res_line;
res_line = strtok(res_buf, "\r\n");
for(int i = 0; i<=11; i++){
strcat(response, res_line);
strcat(response, "\r\n");
res_line = strtok(NULL, "\r\n");
} //copy header content using strcat
while(res_line!= NULL){
memcpy(response, res_line, sizeof(res_line));
res_line = strtok(NULL, "\r\n");
} //copy message body as bytes using memcpy
then send response to client using send function.
Однако, независимо от того, какую функцию я использую, тело сообщения не отправляется успешно.
как показано на странный символ выше
Есть намеки?
Большое спасибо заранее