From 507872323626836af21442f4defd5450e13eab91 Mon Sep 17 00:00:00 2001 From: ziyue <1213642868@qq.com> Date: Sat, 11 Feb 2023 11:55:06 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9Emk=5Fhttp=5Fbody=E6=97=A0?= =?UTF-8?q?=E6=8B=B7=E8=B4=9D=E5=88=9B=E5=BB=BAapi?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- api/include/mk_events_objects.h | 7 +++++++ api/source/mk_events_objects.cpp | 6 ++++++ api/tests/httpclient.c | 2 +- 3 files changed, 14 insertions(+), 1 deletion(-) diff --git a/api/include/mk_events_objects.h b/api/include/mk_events_objects.h index d2fc2a57..765978a5 100644 --- a/api/include/mk_events_objects.h +++ b/api/include/mk_events_objects.h @@ -145,6 +145,13 @@ typedef void* mk_http_body; */ API_EXPORT mk_http_body API_CALL mk_http_body_from_string(const char *str,size_t len); +/** + * 生成HttpBufferBody + * @param buffer mk_buffer对象 + */ +API_EXPORT mk_http_body API_CALL mk_http_body_from_buffer(mk_buffer buffer); + + /** * 生成HttpFileBody * @param file_path 文件完整路径 diff --git a/api/source/mk_events_objects.cpp b/api/source/mk_events_objects.cpp index 768b2aa9..793ea272 100644 --- a/api/source/mk_events_objects.cpp +++ b/api/source/mk_events_objects.cpp @@ -253,6 +253,7 @@ API_EXPORT void API_CALL mk_media_source_for_each(void *user_data, on_mk_media_s } ///////////////////////////////////////////HttpBody///////////////////////////////////////////// + API_EXPORT mk_http_body API_CALL mk_http_body_from_string(const char *str, size_t len){ assert(str); if(!len){ @@ -261,6 +262,11 @@ API_EXPORT mk_http_body API_CALL mk_http_body_from_string(const char *str, size_ return new HttpBody::Ptr(new HttpStringBody(std::string(str, len))); } +API_EXPORT mk_http_body API_CALL mk_http_body_from_buffer(mk_buffer buffer) { + assert(buffer); + return new HttpBody::Ptr(new HttpBufferBody(*((Buffer::Ptr *) buffer))); +} + API_EXPORT mk_http_body API_CALL mk_http_body_from_file(const char *file_path){ assert(file_path); return new HttpBody::Ptr(new HttpFileBody(file_path)); diff --git a/api/tests/httpclient.c b/api/tests/httpclient.c index 14a79a90..053dde8e 100644 --- a/api/tests/httpclient.c +++ b/api/tests/httpclient.c @@ -16,7 +16,7 @@ typedef struct { mk_http_requester requester; } Context; -void API_CALL on_requester_complete(void *user_data, int code, const char *err_msg){ +static void API_CALL on_requester_complete(void *user_data, int code, const char *err_msg){ Context *ctx = (Context *)user_data; log_debug("code: %d %s", code, err_msg); size_t res_len = 0;