0

在有条件兼容/通用服务器中,类似这样的东西

#define HTTP_MSG_LEN_MAX = ??;

...

int read_request(sockfd, ...)
{
  char *buf = malloc(sizeof(char) * http_msg_len_max + 1);
  int read_total = 0;
  int read_once = 0;

    while (zStrFind(buf, "\r\n\r\n") != -1 && read_total < HTTP_MSG_LEN_MAX) {
      read_once = read(sockfd, buf + read_total, HTTP_MSG_LEN_MAX - read_total);

     if (read_once < 0) {
       fprintf(stderr, "read failed: %s \n", strerror(errno));
       free(buf);
       return -1;
     }

     read_total += read_once;
  }

  ...

  return 0;
}

我已经知道request 中 HTTP URI的最大长度,但是 HTTP 消息的最大长度是多少?
RFC2616没有提到它。

4

1 回答 1

2

没有最大长度(根据规范)。

于 2013-02-06T12:01:26.953 回答