linux下libcurl库编译和使用

linux下libcurl库编译和使用

参考

一、libcurl简介

libcurl作为一个多协议的便于客户端使用的URL传输库,基于C语言,提供C语言的API接口,支持DICT, FILE, FTP, FTPS, Gopher, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMTP, SMTPS, Telnet and TFTP这些协议,同时支持使用SSL证书的安全文件传输:HTTP POST, HTTP PUT, FTP 上传, 基于HTTP形式的上传、代理、Cookies、用户加密码的认证等多种应用场景。另外,libcurl是一个高移植性的库,能在绝大多数系统上运行,包括Solaris, NetBSD, FreeBSD, OpenBSD, Darwin, HPUX, IRIX, AIX, Tru64, Linux, UnixWare, HURD, Windows, Amiga, OS/2, BeOs, Mac OS X, Ultrix, QNX, OpenVMS, RISC OS, Novell NetWare, DOS等。

二、编译安装

1、下载源码

地址:

www.zeeklog.com  - linux下libcurl库编译和使用

wget https://curl.se/download/curl-7.87.0.zip
unzip curl-7.87.0.zip
cd curl-7.87.0

2、配置环境

./configure --prefix=/usr/local/libcurl/7.87.0 --with-openssl

3、编译

make -j4

4、安装

make install

root@sony-HP-Notebook:/usr/local/libcurl/7.87.0# ls
bin  include  lib  share

三、封装

1、request_uti.h

/**
 * 公共
 * @date 2023-01-17
 */
#pragma once
#ifndef REQUEST_UTIL_H
#define REQUEST_UTIL_H

#include <string>
#include <vector>
#include <curl/curl.h>
#include "cJSON.h"

using namespace std;

class RequestUtil {
   
public:

    RequestUtil() = default;
    ~RequestUtil() = default;

    static RequestUtil* instance();

    void test();

    int restPost( string &url,  string &data, cJSON **result,  int timeout = 60);
    CURLcode restGet( string &url,  string &data, string &response, int timeout = 60);

private:
    // size_t receiveData(void *contents, size_t size, size_t nmemb, void *stream);

};

#endif // REQUEST_UTIL_H

2、request_uti.cpp

#include <iostream>

Read more

超棒的雅思资源!

超棒的雅思资源!

雅思真题材料地址: https://github.com/zeeklog/IETLS 感谢所有人。材料来自:@shah0150 & @kbtxwer * 超棒的雅思资源 * 雅思简介 * 听力 * 阅读 * 写作 * 口语 * 词汇 * 其他 * YouTube 频道 * [播客] (#podcasts) 雅思简介 * 什么是雅思 - 了解什么是雅思 听力 * 高级听力 * 雅思官方网站 * 考试英语 * 英国广播公司节目 * 乔治梅森大学口音学习网站 - 学习不同的口音 * 英国广播公司播客 * 英国文化协会听力练习 阅读 * 雅思提升阅读 写作 * 雅思提升写作 * 雅思从 6 分到 9 分 * 迷你雅思 口语 * Verbling 提供在线英语家教服务

By Ne0inhk
🚀Zeek.ai一款基于 Electron 和 Vite 打造的跨平台(支持 Windows、macOS 和 Linux) AI 浏览器

🚀Zeek.ai一款基于 Electron 和 Vite 打造的跨平台(支持 Windows、macOS 和 Linux) AI 浏览器

是一款基于 Electron 和 Vite 打造的跨平台(支持 Windows、macOS 和 Linux) AI 浏览器。 集成了 SearXNG AI 搜索、开发工具集合、 市面上最流行的 AI 工具门户,以及代码编写和桌面快捷工具等功能, 通过模块化的 Monorepo 架构,提供轻量级、可扩展且高效的桌面体验, 助力 AI 驱动的日常工作流程。

By Ne0inhk