#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
/**功能: [fgeturl] c語言訪問url
* 引數: url:位址 nport:位址的埠
* 返回值: 0:成功 -1:失敗
* 備註:埠注意 預設的都是80
*/#define bufsize 0xf000
int fgeturl(char* url,int nport, char *presult)elseelse
}//將主機資訊儲存到host中
//此處將它置零,即它所指向的內容裡面已經分離出了相對路徑,剩下的為host信
//息(從myurl到phost位址段存放的是host)
*phost = '\0';
strcpy(host,myurl);
//設定socket引數
if(-1 == (cfd = socket(af_inet,sock_stream,0)))
purl = gethostbyname(host);//將上面獲得的主機資訊通過網域名稱解析函式獲得域》名資訊
//設定ip位址結構
bzero(&cadd,sizeof(struct sockaddr_in));
cadd.sin_family = af_inet;
cadd.sin_addr.s_addr = *((unsigned long*)purl->h_addr_list[0]);
cadd.sin_port = htons(nport);
//向web伺服器傳送url資訊
memset(request,0,bufsize);
strcat(request,"get ");
strcat(request,get);
strcat(request," http/1.1\r\n");//至此為http請求行的資訊
strcat(request,"host: ");
strcat(request,host);
strcat(request,"\r\n");
strcat(request,"cache-control: no-cache\r\n\r\n");
printf("*****= host:%s, get:%s *****=\n", host,get);
//連線伺服器
int cc;
if(-1 == (cc = connect(cfd,(struct sockaddr*)&cadd,(socklen_t)sizeof(cadd))))
printf("connect success!\n");
//向伺服器傳送url請求的request
int cs;
if(-1 == (cs = send(cfd,request,strlen(request),0)))
printf("傳送成功,傳送的位元組數:%d\n",cs);
//客戶端接收伺服器的返回資訊
memset(text,0,bufsize);
int cr;
if(-1 == (cr = recv(cfd,text,bufsize,0)))else
close(cfd);}/*
* 執行系統命令並獲取命令的返回結果
*/bool fsystemcmd(const char *scmd,char *sresult);
long fgetlocalhostip()}}
close (fd);
}return ip;
}void fgetfiletowcontent(const char * ppath, char *sresult)
/**功能: 註冊和更新伺服器資訊
*引數: sserialnumber:序列號 ninterval:間隔時間 預設為5分鐘
*/void fregisterandupdate(char *sserialnumber, int ninterval=5)
void fforeverrun()"))
//~ strcpy(sresult,strstr( sresult, "\"interval\":"));
//~ sscanf(sresult, "\"interval\":\"%d\"", &ninterval);
//~ sleep(ninterval*60);
//~ printf("time:%ld,interval:%d\n", time(0), ninterval);
//~
//~ fregisterandupdate(sserialnumber, ninterval);
///更新
//~ }
}int main(int argc,char* argv)
網路請求介面封裝方式
最近需要給別人做sdk,所以很多需要封裝的介面,網路請求的。這個需求是type不能暴露在方法裡面,但是上傳伺服器必須要有type這個引數。public class letvplayservicebusiness implements imultipublicbusiness 收藏列表 獲取全部作品列...
網路請求的方式
網路請求的兩種方式 1.get 是獲取指定的url上的資源 1 不安全不會將使用者的資訊暴露在url中 2 傳輸數量小,主要是因為url的長度有限 3 將資料按照variable value的形式,新增到action所指向的url後面,並且兩者使用 連線,各個變數之間使用 連線。2.post 對指定...
python mock介面 ,網路請求2
使用模組 flask 為什麼用,為了本地寫一些介面使用psotman一些工具測試 import flask 輕量級的web開發框架 import tools import json import datetime import time server flask.flask name server....