我在socket接收HTTP请求。
我想在标题和内容中分割HTTP请求。
所以,我尝试了这个来源。
//p is char* type, response too
p = strtok(response, "\r\n\r\n");
while(NULL != p){
printf("%s\n", p);
p = strtok(NULL, "\r\n\r\n");
}
但strtok()
也将"\r\n"
替换为NULL
。
我只想替换"\r\n\r\n"
。
我该怎么办?
答案 0 :(得分:3)
尝试strstr
//p1 is char* type, response and p2 too
p1 = response;
p2 = strstr(response, "\r\n\r\n");
while(NULL != p2){
printf("%.*s\n", p2 - p1, p1);
p1 = p2;
p2 = strstr(p2 + 1, "\r\n\r\n");
}