前面我搭建了一个servlet,响应get/post请求,网页端已经实现get/post请求,这个时候我用c++编辑的程序也想发送post请求,于是,有了下面这段代码。
servlet地址:https://mp.youkuaiyun.com/mp_blog/creation/editor/120993971
废话不多说,上硬货:
发送函数代码:
void sendPostRequest()
{
//开始进行socket初始化;
WSADATA wData;
::WSAStartup(MAKEWORD(2,2),&wData);
SOCKET clientSocket = socket(AF_INET,1,0);
struct sockaddr_in ServerAddr = {0};
int Ret=0;
int AddrLen=0;
HANDLE hThread=0;
char *bufSend = "POST http://localhost:8080/Test001/Test001/HelloServlet HTTP/1.1\r\nHost: 127.0.0.1\r\n\r\n";
CString strIP = "127.0.0.1";
ServerAddr.sin_addr.s_addr = inet_addr(strIP);
ServerAddr.sin_port = htons(8080);;
ServerAddr.sin_family = AF_INET;
int errNo = 0;
errNo = connect(clientSocket,(sockaddr*)&ServerAddr,sizeof(ServerAddr));
if(errNo==0)
{
//如果发送成功,则返回发送成功的字节数;
if(send(clientSocket,bufSend ,strlen(bufSend),0)>0)
{
AfxMessageBox("发送成功");
}
}
else
{
errNo=WSAGetLastError();
}
//socket环境清理;
::WSACleanup();
}
注意里面地址的替换,我这是在本机上实验的,所以是localhost/127.0.0.1。
效果:

好了,研究研究怎么发送参数了。
本文档展示了如何使用 C++ 编程语言发送 POST 请求到一个已搭建的 Servlet,该 Servlet 能响应 GET 和 POST 请求。示例代码详细说明了连接到本地 Servlet 并发送 'POST' 请求的过程,为后续添加参数提供了基础。
1万+

被折叠的 条评论
为什么被折叠?



