我正在创建一个简单的C Web服务器来解析包含和xml正文的POST请求。我试图回复回复,但我似乎无法做到正确。这是我的代码:
char res[2000];
strcpy(res, "HTTP/1.1 201 OK\nContent-Type: text/html\n");
printf("%s", res);;
char re[4026];
strcpy(re,"<html><body><p>");
strcat(re, result);
strcat(re, "</p></body></html>\n");
printf("\n%s\n", re);
char tm[1000];
sprintf(tm, "Content-Length: ");
char len[4035];
int l= strlen(re);
sprintf(len, "%d\n", l);
printf("\n%s\n", len);
strcat(tm, len);
printf("\n%s\n", tm);
strcat(res, tm);
strcat(res, re);
printf("\n%s", res);
strcat(res, "\0");
send(sock, res, strlen(res),0);
我不知道为什么,但是当我发送时,注意到了并且我留在了循环中。
如果代码有点难以理解,这就是我正在生成的字符串:
HTTP/1.1 201 OK
Content-Type: text/html
Content-Length: 37
<html><body><p>139</p></body></html>
答案 0 :(得分:2)
在标题之后和身体之前需要另一个新行:
HTTP/1.1 201 OK
Content-Type: text/html
Content-Length: 37
<html><body><p>139</p></body></html>