8 樹莓派c語言實現HTTP的GET和POST請求

2021-09-23 07:51:53 字數 3686 閱讀 2440

客戶端向伺服器傳送資訊

#include#include #include #include #include #include #include #include #include #include int main()   

if(-1 == (connect(client_sockfd,(struct sockaddr *)&server_addr,sizeof(struct sockaddr))))

send(client_sockfd,"helloworld",sizeof("helloworld"),0);

close(client_sockfd);//關閉套接字

}

服務端接收訊息
#include #include #include #include #include #include #include #include #include #define buffersize 1024

int main(int argc,char **ar**)

listen(listenfd,1024);

while(1)

n = recv(connfd,buff,buffersize,0);

buff[n] = '\0';

printf("recv msg from client:%s\n",buff);

close(connfd);

} close(listenfd);

}

socket請求原文

http請求需要新增請求頭的內容

如下請求頭內容:

method

urlcontent-host

content-type

content-length

get請求
#include #include #include #include #include #include #include #include #include #include #include #include #include #define ipstr "42.121.252.58" //伺服器ip位址;

#define port 80

#define bufsize 1024

int main(int argc, char **ar**);

bzero(&servaddr, sizeof(servaddr));

servaddr.sin_family = af_inet;

servaddr.sin_port = htons(port);

if (inet_pton(af_inet, ipstr, &servaddr.sin_addr) <= 0 );

if (connect(sockfd, (struct sockaddr *)&servaddr, sizeof(servaddr)) < 0)

printf("與遠端建立了連線\n");

}

post請求
#include #include #include #include #include #include #include #include #include #include #include #include #include #define ipstr "61.147.124.120"

#define port 80

#define bufsize 1024

int main(int argc, char **ar**);

bzero(&servaddr, sizeof(servaddr));

servaddr.sin_family = af_inet;

servaddr.sin_port = htons(port);

if (inet_pton(af_inet, ipstr, &servaddr.sin_addr) <= 0 );

if (connect(sockfd, (struct sockaddr *)&servaddr, sizeof(servaddr)) < 0)

printf("與遠端建立了連線\n");

//str2的值為post的資料

strcat(str1, str2);

strcat(str1, "\r\n\r\n");

printf("%s\n",str1);

ret = write(sockfd,str1,strlen(str1));

if (ret < 0) else

fd_zero(&t_set1);

fd_set(sockfd, &t_set1);

tv.tv_sec= 0;

tv.tv_usec= 0;

h= 0;

while(1);

if ( fd_isset(sockfd, &t_set1) )

printf("%s\n", buf);}}

close(sockfd);

return 0;

}

get post 請求 原文

8點FFT的C語言實現

說明 1 處理的物件是複數,使用的是純c語言 2 程式針對的是n 8的fft 3 因為是按時間抽選,所以輸入為倒位序,輸出為正常序,因此輸入資料要進行倒位序 請注意後面的更正!c檔案 include fft.h complex wn0 complex wn1 complex wn2 complex ...

8點FFT的C語言實現

說明 1 處理的物件是複數,使用的是純c語言 2 程式針對的是n 8的fft 3 因為是按時間抽選,所以輸入為倒位序,輸出為正常序,因此輸入資料要進行倒位序 請注意後面的更正!c檔案 include fft.h complex wn0 complex wn1 complex wn2 complex ...

基於RTOS的c語言實現http檔案上傳

本實驗為了減少 量,使用了封裝比較完善的http庫,本文主要講述http檔案上傳的主要要求。為了分析http header,我們通過chrome得到上傳檔案時的http資訊 通過上面的截圖我們可以發現,關鍵頭部資訊為content type和content length。一般我們寫html上傳時,都...