"\r\n"
#define HTTPC_REQ_11_PROXY_PORT_FORMAT(host, host_port, uri, srv_name) HTTPC_REQ_11_PROXY_PORT, host, host_port, uri, HTTPC_CLIENT_AGENT, srv_name
-
+//x-www-form-urlencoded
+//application/json
////////////////////////////////////////post报文///////////////////////////////////////////////////
/* POST request basic */
#define HTTPC_REQ_11_POST "POST %s HTTP/1.1\r\n" /* URI */\
"User-Agent: %s\r\n" /* User-Agent */ \
"Accept: */*\r\n" \
- "Content-Type: application/x-www-form-urlencoded\r\n" \
+ "Content-Type: application/json\r\n" \
"Content-Length: %d\r\n" \
"Connection: Close\r\n" /* we don't support persistent connections, yet */\
"\r\n" \
"User-Agent: %s\r\n" /* User-Agent */ \
"Accept: */*\r\n" \
"Host: %s\r\n" /* server name */ \
- "Content-Type: application/x-www-form-urlencoded\r\n" \
+ "Content-Type: application/json\r\n" \
"Content-Length: %d\r\n" \
"Connection: Close\r\n" /* we don't support persistent connections, yet */ \
"\r\n" \
"%s"
-#define HTTPC_REQ_11_HOST_FORMAT_POST(uri, srv_name, arglen, args) HTTPC_REQ_11_HOST, uri, HTTPC_CLIENT_AGENT, srv_name, arglen, args
+#define HTTPC_REQ_11_HOST_FORMAT_POST(uri, srv_name, arglen, args) HTTPC_REQ_11_HOST_POST, uri, HTTPC_CLIENT_AGENT, srv_name, arglen, args
typedef enum ehttpc_parse_state {
HTTPC_PARSE_WAIT_FIRST_LINE = 0,
httpc_create_request_string(const httpc_connection_t *settings, const char* server_name, int server_port, const char* uri,
int use_host, char *buffer, size_t buffer_size)
{
+ printf("httpc_create_request_string use_post %d use_proxy %d use_host %dhost %d\r\n",settings->use_post,settings->use_proxy,use_host);
if (settings->use_proxy) {
LWIP_ASSERT("server_name != NULL", server_name != NULL);
- if (server_port != HTTP_DEFAULT_PORT) {
+ if (server_port != HTTP_DEFAULT_PORT)
+ {
return snprintf(buffer, buffer_size, HTTPC_REQ_11_PROXY_PORT_FORMAT(server_name, server_port, uri, server_name));
} else {
return snprintf(buffer, buffer_size, HTTPC_REQ_11_PROXY_FORMAT(server_name, uri, server_name));
if (settings->use_post)
{
return snprintf(buffer, buffer_size, HTTPC_REQ_11_HOST_FORMAT_POST(uri, server_name, settings->arglen, settings->args));
+ printf("%s\r\n",buffer);
}
return snprintf(buffer, buffer_size, HTTPC_REQ_11_HOST_FORMAT(uri, server_name));
}
else
{
+
if (settings->use_post){
return snprintf(buffer, buffer_size, HTTPC_REQ_11_FORMAT_POST(uri, settings->arglen, settings->args));
+
}
return snprintf(buffer, buffer_size, HTTPC_REQ_11_FORMAT(uri));
}
/* set up request buffer */
req_len2 = httpc_create_request_string(settings, server_name, server_port, uri, use_host,
(char *)req->request->payload, req_len + 1);
+ printf("%s\r\n",(char *)req->request->payload);
if (req_len2 != req_len) {
httpc_free_state(req);
return ERR_VAL;