線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1867
推到 Plurk!
推到 Facebook!

請問c++如何取得http資料

答題得分者是:GrandRURU
frog1
一般會員


發表:25
回覆:40
積分:18
註冊:2007-01-24

發送簡訊給我
#1 引用回覆 回覆 發表時間:2010-11-29 18:53:55 IP:219.80.xxx.xxx 訂閱
Hi,各位前輩
請問我在IE鍵入 http://192.168.1.13/get?model
會回覆 model = 2000
這段Web的方式用C 要如何寫, 我找了一天的資料, 但可能方向不對一直找不到答案,
請各前輩指點

青蛙
GrandRURU
站務副站長


發表:240
回覆:1680
積分:1874
註冊:2005-06-21

發送簡訊給我
#2 引用回覆 回覆 發表時間:2010-12-04 19:52:04 IP:111.249.xxx.xxx 未訂閱
可以試著用Indy的IdHTTP元件來取得

可以參考:What's the simplest way to call Http GET url using Delphi?

===================引 用 frog1 文 章===================
Hi,各位前輩
請問我在IE鍵入 http://192.168.1.13/get?model
會回覆 model = 2000
這段Web的方式用C 要如何寫, 我找了一天的資料, 但可能方向不對一直找不到答案,
請各前輩指點

青蛙
frog1
一般會員


發表:25
回覆:40
積分:18
註冊:2007-01-24

發送簡訊給我
#3 引用回覆 回覆 發表時間:2010-12-06 09:47:27 IP:219.80.xxx.xxx 訂閱
Hi,   感謝GrandRURU的指點, 後來有找到解決方式, 程式碼如下, 提供需用者

[code cpp]
#include
#include
#include
#include
#include
#define MAX_BUFFER_LENGTH 2048
using namespace std;

int main(int argc, char *argv[])
{
char *valReg="getreg?page=5®=186";
char *chrIP = "192.168.1.13";
SOCKET sockfd;
int len;
struct sockaddr_in address;
int result;
char *ch = "GET /getreg?model HTTP/1.0\r\n"
"Host: 192.168.1.13\r\n"
"\r\n";
WSADATA wsadata;
if(WSAStartup(0x101,(LPWSADATA)&wsadata) != 0) {
cout << "Winsock Error" << endl;
exit(1);
}
sockfd = socket(AF_INET, SOCK_STREAM, 0);
int on = 1;
setsockopt(sockfd,IPPROTO_TCP,TCP_NODELAY,(char*)&on,sizeof(on));
address.sin_family = AF_INET;
address.sin_addr.s_addr = inet_addr(chrIP);
address.sin_port = htons(80);
len = sizeof(address);
result = connect(sockfd, (struct sockaddr *)&address, len);
if(result == -1) {
cout << "Connetc Error" << endl;
exit(1);
}
send(sockfd, ch, strlen(ch), 0);
Sleep(50);
char buf[MAX_BUFFER_LENGTH] = {0};
recv(sockfd, buf, MAX_BUFFER_LENGTH, 0);
cout << "char from server =" << buf << endl;
closesocket(sockfd);
system("PAUSE");
return EXIT_SUCCESS;
}
[/code]
編譯時需Link -lwsock32 -lws2_32

系統時間:2024-04-20 15:48:02
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!