欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

c 獲取前臺傳過來的json

錢浩然1年前8瀏覽0評論

在C語言中獲取前臺傳過來的JSON可以通過HTTP協議來實現。假設有一個前端頁面通過AJAX請求了一個JSON數據,并將數據以POST方式發送給后端。那么后端通過解析HTTP請求體中的數據,即可獲取前端傳過來的JSON。

#include <stdio.h>#include <stdlib.h>#include <string.h>int main() {
int content_length=0;
char* content_type=NULL;
char* query_string=NULL;
char* tmp=NULL;
char* request_method=getenv("REQUEST_METHOD");
if(!strcmp(request_method, "GET")) {
query_string=getenv("QUERY_STRING");
if(query_string) tmp=strdup(query_string);
} else {
content_type=getenv("CONTENT_TYPE");
char* s_content_length=getenv("CONTENT_LENGTH");
if(s_content_length) content_length=atoi(s_content_length);
if(content_length==0 || !content_type || strcmp(content_type, "application/json")) {
printf("Status: 400 Bad Request\n\n");
printf("

Bad Request

\n"); exit(0); } tmp=(char*)malloc(content_length+1); memset(tmp, 0, content_length+1); int i=0; for(;i%s

\n", tmp); free(tmp); return 0; }

上述代碼中通過調用getenv來獲取HTTP請求中的環境變量,根據請求方法來獲取JSON數據。需要注意的是,如果請求方法為POST,我們需要同時從CONTENT_LENGTH和標準輸入里來獲取JSON數據。解析JSON數據可以使用常用的JSON解析庫,比如json-c、cJSON等。