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

c http發送json

黃文隆2年前8瀏覽0評論

在C語言中,發送JSON數據可以使用HTTP協議。HTTP協議是一個超文本傳輸協議,通常用于客戶端和服務器之間的通信,例如在Web瀏覽器和網站服務器之間。使用HTTP協議發送JSON數據可以用于數據交換、API調用等。

#include#include#include#include#includeint main() {
struct sockaddr_in server_addr;
int socket_fd, status;
char *message = "{\"name\": \"jack\", \"age\": 20}";
//創建 Socket
socket_fd = socket(AF_INET, SOCK_STREAM, IPPROTO_IP);
if (socket_fd == -1) {
printf("Socket 創建失敗!\n");
exit(EXIT_FAILURE);
}
//設置 server 的 IP 地址和端口號
memset(&server_addr, 0, sizeof(server_addr));
server_addr.sin_family = AF_INET;
server_addr.sin_port = htons(8080);
inet_pton(AF_INET, "127.0.0.1", &server_addr.sin_addr);
//連接 server
status = connect(socket_fd, (struct sockaddr *)&server_addr, sizeof(server_addr));
if (status == -1) {
printf("連接失敗!\n");
exit(EXIT_FAILURE);
}
//發送 HTTP 頭信息和 JSON 數據
char header[1024];
sprintf(header, "POST /api HTTP/1.1\r\n"
"Host: 127.0.0.1:8080\r\n"
"Content-Type: application/json;charset=UTF-8\r\n"
"Content-Length: %ld\r\n\r\n", strlen(message));
send(socket_fd, header, strlen(header), 0);
send(socket_fd, message, strlen(message), 0);
//接收 server 返回的數據
char buffer[1024];
size_t recv_size = recv(socket_fd, buffer, sizeof(buffer), 0);
buffer[recv_size] = '\0';
printf("%s\n", buffer);
//關閉 Socket
shutdown(socket_fd, SHUT_RDWR);
close(socket_fd);
return 0;
}

在上面的代碼中,我們使用了 Socket 編程來連接服務器并發送 JSON 數據。

首先,我們創建 Socket,并設置服務器的 IP 地址和端口號。然后,我們連接服務器,并發送 HTTP 頭信息和 JSON 數據。最后,我們接收服務器返回的數據,并關閉 Socket。