正在显示
1 个修改的文件
包含
26 行增加
和
0 行删除
| @@ -483,20 +483,43 @@ public: | @@ -483,20 +483,43 @@ public: | ||
| 483 | public: | 483 | public: |
| 484 | virtual u_int8_t method(); | 484 | virtual u_int8_t method(); |
| 485 | virtual u_int16_t status_code(); | 485 | virtual u_int16_t status_code(); |
| 486 | + /** | ||
| 487 | + * method helpers. | ||
| 488 | + */ | ||
| 486 | virtual std::string method_str(); | 489 | virtual std::string method_str(); |
| 487 | virtual bool is_http_get(); | 490 | virtual bool is_http_get(); |
| 488 | virtual bool is_http_put(); | 491 | virtual bool is_http_put(); |
| 489 | virtual bool is_http_post(); | 492 | virtual bool is_http_post(); |
| 490 | virtual bool is_http_delete(); | 493 | virtual bool is_http_delete(); |
| 491 | virtual bool is_http_options(); | 494 | virtual bool is_http_options(); |
| 495 | + /** | ||
| 496 | + * whether body is chunked encoding, for reader only. | ||
| 497 | + */ | ||
| 492 | virtual bool is_chunked(); | 498 | virtual bool is_chunked(); |
| 499 | + /** | ||
| 500 | + * the uri contains the host and path. | ||
| 501 | + */ | ||
| 493 | virtual std::string uri(); | 502 | virtual std::string uri(); |
| 503 | + /** | ||
| 504 | + * the url maybe the path. | ||
| 505 | + */ | ||
| 494 | virtual std::string url(); | 506 | virtual std::string url(); |
| 495 | virtual std::string host(); | 507 | virtual std::string host(); |
| 496 | virtual std::string path(); | 508 | virtual std::string path(); |
| 497 | public: | 509 | public: |
| 510 | + /** | ||
| 511 | + * read body to string. | ||
| 512 | + * @remark for small http body. | ||
| 513 | + */ | ||
| 498 | virtual int body_read_all(std::string& body); | 514 | virtual int body_read_all(std::string& body); |
| 515 | + /** | ||
| 516 | + * get the body reader, to read one by one. | ||
| 517 | + * @remark when body is very large, or chunked, use this. | ||
| 518 | + */ | ||
| 499 | virtual ISrsHttpResponseReader* body_reader(); | 519 | virtual ISrsHttpResponseReader* body_reader(); |
| 520 | + /** | ||
| 521 | + * the content length, -1 for chunked or not set. | ||
| 522 | + */ | ||
| 500 | virtual int64_t content_length(); | 523 | virtual int64_t content_length(); |
| 501 | /** | 524 | /** |
| 502 | * get the param in query string, | 525 | * get the param in query string, |
| @@ -504,6 +527,9 @@ public: | @@ -504,6 +527,9 @@ public: | ||
| 504 | * then query_get("start") is "100", and query_get("end") is "200" | 527 | * then query_get("start") is "100", and query_get("end") is "200" |
| 505 | */ | 528 | */ |
| 506 | virtual std::string query_get(std::string key); | 529 | virtual std::string query_get(std::string key); |
| 530 | + /** | ||
| 531 | + * get the headers. | ||
| 532 | + */ | ||
| 507 | virtual int request_header_count(); | 533 | virtual int request_header_count(); |
| 508 | virtual std::string request_header_key_at(int index); | 534 | virtual std::string request_header_key_at(int index); |
| 509 | virtual std::string request_header_value_at(int index); | 535 | virtual std::string request_header_value_at(int index); |
-
请 注册 或 登录 后发表评论