mirror of
https://github.com/ZLMediaKit/ZLMediaKit.git
synced 2026-06-14 12:05:58 +08:00
全面更新整理c sdk
This commit is contained in:
61
api/tests/httpclient.c
Normal file
61
api/tests/httpclient.c
Normal file
@@ -0,0 +1,61 @@
|
||||
/*
|
||||
* Copyright (c) 2016 The ZLMediaKit project authors. All Rights Reserved.
|
||||
*
|
||||
* This file is part of ZLMediaKit(https://github.com/xia-chu/ZLMediaKit).
|
||||
*
|
||||
* Use of this source code is governed by MIT license that can be found in the
|
||||
* LICENSE file in the root of the source tree. All contributing project authors
|
||||
* may be found in the AUTHORS file in the root of the source tree.
|
||||
*/
|
||||
|
||||
#include <string.h>
|
||||
#include "mk_mediakit.h"
|
||||
|
||||
typedef struct {
|
||||
mk_sem sem;
|
||||
mk_http_requester requester;
|
||||
} Context;
|
||||
|
||||
static API_CALL void 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;
|
||||
log_debug("response: %s %s", mk_http_requester_get_response_status(ctx->requester),
|
||||
mk_http_requester_get_response_body(ctx->requester, &res_len));
|
||||
mk_sem_post(ctx->sem, 1);
|
||||
}
|
||||
|
||||
int main(int argc, char *argv[]) {
|
||||
mk_config config = {
|
||||
.ini = NULL,
|
||||
.ini_is_path = 0,
|
||||
.log_level = 0,
|
||||
.log_mask = LOG_CONSOLE,
|
||||
.ssl = NULL,
|
||||
.ssl_is_path = 1,
|
||||
.ssl_pwd = NULL,
|
||||
.thread_num = 0
|
||||
};
|
||||
mk_env_init(&config);
|
||||
|
||||
mk_http_requester requester = mk_http_requester_create();
|
||||
mk_http_requester_set_method(requester, "POST");
|
||||
|
||||
mk_http_body body = mk_http_body_from_string("tn=monline_7_dg&ie=utf-8&wd=test", 0);
|
||||
mk_http_requester_set_body(requester, body);
|
||||
mk_http_body_release(body);
|
||||
|
||||
mk_sem sem = mk_sem_create();
|
||||
|
||||
Context ctx = {.requester = requester, .sem = sem};
|
||||
|
||||
mk_http_requester_set_cb(requester, on_requester_complete, &ctx);
|
||||
mk_http_requester_start(requester, "http://www.baidu.com/baidu", 10);
|
||||
|
||||
//等待http请求完毕
|
||||
mk_sem_wait(sem);
|
||||
|
||||
mk_sem_release(sem);
|
||||
mk_http_requester_release(requester);
|
||||
return 0;
|
||||
}
|
||||
Reference in New Issue
Block a user