资源简介

c++开发http服务端+客户端

资源截图

代码片段和文件信息

#include “mongoose.h“
#ifdef MG_MODULE_LINES
#line 1 “mongoose/src/internal.h“
#endif
/*
 * Copyright (c) 2014 Cesanta Software Limited
 * All rights reserved
 */

#ifndef CS_MONGOOSE_SRC_INTERNAL_H_
#define CS_MONGOOSE_SRC_INTERNAL_H_

#ifndef MG_MALLOC
#define MG_MALLOC malloc
#endif

#ifndef MG_CALLOC
#define MG_CALLOC calloc
#endif

#ifndef MG_REALLOC
#define MG_REALLOC realloc
#endif

#ifndef MG_FREE
#define MG_FREE free
#endif

#ifndef MBUF_REALLOC
#define MBUF_REALLOC MG_REALLOC
#endif

#ifndef MBUF_FREE
#define MBUF_FREE MG_FREE
#endif

#define MG_SET_PTRPTR(_ptr _v) \
  do {                          \
    if (_ptr) *(_ptr) = _v;     \
  } while (0)

#ifndef MG_INTERNAL
#define MG_INTERNAL static
#endif

#ifdef PICOTCP
#define NO_LIBC
#define MG_DISABLE_PFS
#endif

/* Amalgamated: #include “mongoose/src/net.h“ */
/* Amalgamated: #include “mongoose/src/http.h“ */
/* Amalgamated: #include “common/cs_dbg.h“ */

#define MG_CTL_MSG_MESSAGE_SIZE 8192

/* internals that need to be accessible in unit tests */
MG_INTERNAL struct mg_connection *mg_do_connect(struct mg_connection *nc
                                                int proto
                                                union socket_address *sa);

MG_INTERNAL int mg_parse_address(const char *str union socket_address *sa
                                 int *proto char *host size_t host_len);
MG_INTERNAL void mg_call(struct mg_connection *nc
                         mg_event_handler_t ev_handler int ev void *ev_data);
void mg_forward(struct mg_connection *from struct mg_connection *to);
MG_INTERNAL void mg_add_conn(struct mg_mgr *mgr struct mg_connection *c);
MG_INTERNAL void mg_remove_conn(struct mg_connection *c);
MG_INTERNAL struct mg_connection *mg_create_connection(
    struct mg_mgr *mgr mg_event_handler_t callback
    struct mg_add_sock_opts opts);
#ifdef _WIN32
/* Retur value is the same as for MultiByteToWideChar. */
int to_wchar(const char *path wchar_t *wbuf size_t wbuf_len);
#endif

struct ctl_msg {
  mg_event_handler_t callback;
  char message[MG_CTL_MSG_MESSAGE_SIZE];
};

#if MG_ENABLE_MQTT
struct mg_mqtt_message;
MG_INTERNAL int parse_mqtt(struct mbuf *io struct mg_mqtt_message *mm);
#endif

/* Forward declarations for testing. */
extern void *(*test_malloc)(size_t size);
extern void *(*test_calloc)(size_t count size_t size);

#ifndef MIN
#define MIN(a b) ((a) < (b) ? (a) : (b))
#endif

#if MG_ENABLE_HTTP
struct mg_serve_http_opts;

/*
 * Reassemble the content of the buffer (buf blen) which should be
 * in the HTTP chunked encoding by collapsing data chunks to the
 * beginning of the buffer.
 *
 * If chunks get reassembled modify hm->body to point to the reassembled
 * body and fire MG_EV_HTTP_CHUNK event. If handler sets MG_F_DELETE_CHUNK
 * in nc->flags delete reassembled body from the mbuf.
 *
 * Return reassembled body size.
 */
MG_INTERNAL size_t mg_handle_chunked(struct mg_connection *nc
                                     struct http_m

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2019-05-20 10:36  CppHttpDemo-master\
     文件          75  2019-05-20 10:36  CppHttpDemo-master\README.md
     目录           0  2019-05-20 10:36  CppHttpDemo-master\common\
     文件      457490  2019-05-20 10:36  CppHttpDemo-master\common\mongoose.c
     文件      171934  2019-05-20 10:36  CppHttpDemo-master\common\mongoose.h
     目录           0  2019-05-20 10:36  CppHttpDemo-master\httpclient\
     文件        1472  2019-05-20 10:36  CppHttpDemo-master\httpclient\http_client.cpp
     文件         482  2019-05-20 10:36  CppHttpDemo-master\httpclient\http_client.h
     文件         487  2019-05-20 10:36  CppHttpDemo-master\httpclient\main.cpp
     目录           0  2019-05-20 10:36  CppHttpDemo-master\httpserver\
     文件        5895  2019-05-20 10:36  CppHttpDemo-master\httpserver\http_server.cpp
     文件        1689  2019-05-20 10:36  CppHttpDemo-master\httpserver\http_server.h
     文件        1217  2019-05-20 10:36  CppHttpDemo-master\httpserver\main.cpp
     目录           0  2019-05-20 10:36  CppHttpDemo-master\httpserver\web\
     文件        2178  2019-05-20 10:36  CppHttpDemo-master\httpserver\web\index.html

评论

共有 条评论