C語言的socket編程是一種常用的網絡通信方式,可以用于實現客戶端與服務器之間的數據傳輸。JSON(JavaScript Object Notation)是一種輕量級的數據交換格式,常用于前后端數據傳輸。在C語言中,使用socket收發JSON數據可以通過以下步驟實現。
//創建socket int sockfd = socket(AF_INET, SOCK_STREAM, 0); //連接服務器 struct sockaddr_in servaddr = { 0 }; servaddr.sin_family = AF_INET; servaddr.sin_port = htons(port); servaddr.sin_addr.s_addr = inet_addr(ip); connect(sockfd, (struct sockaddr*)&servaddr, sizeof(servaddr)); //發送JSON數據 char* json_str = "{\"name\":\"張三\",\"age\":20}"; send(sockfd, json_str, strlen(json_str), 0); //接收JSON數據 char recv_buf[1024] = { 0 }; recv(sockfd, recv_buf, sizeof(recv_buf), 0); printf("%s\n", recv_buf);
在上述代碼中,需要注意以下幾點:
1. 創建socket時,指定AF_INET表示使用IPv4協議,SOCK_STREAM表示使用流式套接字。
2. 連接服務器時,需要初始化servaddr結構體,包括端口號和IP地址。
3. 發送JSON數據時,需要將JSON字符串存儲到緩沖區中,并使用send函數發送。
4. 接收JSON數據時,需要定義緩沖區并使用recv函數接收,接收的數據存儲在緩沖區中。最后需要將緩沖區打印出來,即可得到JSON數據。
上一篇mysql刪除 in
下一篇python 虛擬機判斷