Poco C++——HTTP的post请求和get请求

本文详细介绍了如何使用C++实现HTTP GET和POST请求。包括请求头文件的包含,URL解析,发送请求及接收响应的过程。通过实例演示了如何通过Poco库进行网络通信,提供了一个完整的HTTP请求实现方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  两种请求都需要包含头文件:

  #include <iostream>

  #include <string>

  #include "Poco/Net/HTTPClientSession.h"

  #include "Poco/Net/HTTPRequest.h"

  #include "Poco/Net/HTTPResponse.h"

  #include "Poco/StreamCopier.h"

  #include "Poco/Net/NetException.h"

  #include "Poco/Net/HTMLForm.h"

  #include "Poco/URI.h"

一、get请求

 try {
            URI url("https://www.baidu.com");
            HTTPClientSession session(url.getHost(),url.getPort());
            HTTPRequest req(HTTPRequest::HTTP_GET,HTTPRequest::HTTP_1_1);
            req.set("/s?word=", searhName);
            session.sendRequest(req);
            HTTPResponse res;
            istream & is = session.receiveResponse(res);
            StreamCopier::copyToString(is, result);
        }
        catch(NetException & ex){
            result = ex.displayText();
        }

二、post请求

 1 try{
 2       URI url("http://test.xheart.cn/xheartdevelop05/user/login/validate");
 3     HTTPClientSession session(url.getHost(),url.getPort());
 4     HTTPRequest request(HTTPRequest::HTTP_POST,url.getPath(),HTTPRequest::HTTP_1_1);
 5     HTMLForm form;
 6     form.add("userName", "1220002");
 7     form.add("password", "1234567");
 8     form.prepareSubmit(request);
 9     form.write(session.sendRequest(request));
10     HTTPResponse res;
11     std::istream & is = session.receiveResponse(res);
12     StreamCopier::copyStream(is, std::cout);
13       
14 }
15  catch(NetException & ex){
16     std::cout << ex.displayText();          
17 }

 

转载于:https://www.cnblogs.com/mupiaomiao/p/4723597.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值