Visual Stdio设置:
关闭预编译头:项目->属性->C/C++->预编译头->不使用预编译头
关闭安全警告:项目->属性->C/C++->预处理器->预处理器定义->添加 _CRT_SECURE_NO_WARNINGS
目前实现的http动作有:GET POST HEAD OPTIONS PUT DELETE
工具->nuget包管理器->程序包管理控制台->输入: Install-Package CppRequests -Version 0.0.5
#include <iostream>
#include <string>
#include "requests.h"
using namespace std;
using namespace requests;
int main(int argc)
{
Response resp = Get("https://baidu.com");
cout << resp.status << endl;
cout << resp.GetText() << endl;
return 0;
}
Response resp = Get("https://pan.baidu.com/disk/home");
cout << resp.GetText() << endl; `
map<string, string> data;
data["name"] = "cpp";
data["age"] = "14";
Response resp = Post("http://47.106.162.182:8080/post.php", data);
cout << resp.status << endl;
cout << resp.GetText() << endl;
Response resp = Put("http://httpbin.org/put", "C:\\Users\\jack\\Desktop\\key.txt");
cout << resp.status << endl;
cout << resp.GetText() << endl;
map<string, string> header;
string cookie = "BAIDUID=B066E871294A61BE394DE24FFA475653:FG=1; BIDUPSID=B066E871294A61BE9EF72E101F79BF87; PSTM=1578882286;";
Response resp = Get("https://pan.baidu.com/disk/home",header,cookie);
cout << resp.GetText() << endl;
map<string, string> options;
map<string, string> header;
options["proxy"] = "http=http://122.51.49.88:8888";
try{
Response resp = Get("http://pv.sohu.com/cityjson",header , "", options);
cout << resp.status << endl;
}
catch (const char *msg){
cout << msg << endl;
}
map<string, string> header;
map<string, string> options;
options["timeout"] = "5000";
header["name"] = "cpp";
header["age"] = "14"; header["User-Agent"] = "Cpp Brower"
Response resp = Get("http://httpbin.org/headers",header);
cout << resp.status << endl;
cout << resp.GetText() << endl;
map<string, string> header;
map<string, string> data;
map<string, string> files;
data["key"] = "something";
data["submit"] = "Submit"; //form表单的其他要上传的数据,如账号密码。
files["file"] = "C:\stdafx.h"; //form表单中的文件字段。
Response resp = Post(url,data,files);
cout << resp.status << endl;
cout << resp.GetText() << endl;