Giter VIP home page Giter VIP logo

libcurlez's Introduction

libcurlez

A C++ library wrapping libcurl's easy API, allowing you to easily perform synchronous HTTP queries.

Example

Simple query:

#include <libcurlez/curlez.hxx>
#include <iostream>

int main()
{
  Curl query;
  unsigned short status;

  query.url("http://google.fr")
       .follow_redirects();
  switch (status = query.perform())
  {
  case 0:
    std::cout << "CURL error: " << query.error() << std::endl;
    break ;
  default:
    std::cout << "Received status: " << status;
    break ;
  }
  return 0;
}

Reading response headers and body:

#include <libcurlez/curlez.hxx>
#include <iostream>

int main()
{
  CurlReader query;

  query.url("http://google.fr")
       .follow_redirects();
  if (query.perform() == 200)
  {
    std::cout << "Content-Type = " << query.response_header("Content-Type")
              << std::endl << "--" << std::endl
              << query.response_body() << std::endl;
    return 0;
  }
  return -1;
}

Sending queries with custom method, header and body:

#include <libcurlez/curlez.hxx>
#include <iostream>

int main()
{
  Curl query;

  query.method("PUT")
       .url("http://google.fr")
       .header("Content-Type", "application/json")
       .body("{ \"json\": 42 }")
       .follow_redirects();
  return query.perform() == 200;
}

libcurlez's People

Contributors

plaristote avatar

Watchers

 avatar  avatar

libcurlez's Issues

Package resubmission issue

I saw you had an issue resubmitting a new version and tried to email you with some tips, but your email bounced. Quoting the whole thing below:

This is the mail system at host cumshot.unetresgrossebite.com.

I'm sorry to have to inform you that your message could not
be delivered to one or more recipients. It's attached below.

For further assistance, please send mail to postmaster.

If you do so, please include this problem report. You can
delete your own text from the attached returned message.

                   The mail system

<[email protected]>: host
    deepthroat.unetresgrossebite.com[5.135.4.211] said: 451 4.7.1 Service
    unavailable - try again later (in reply to MAIL FROM command)
From: Boris Kolpackov <[email protected]>
Subject: Re: new package submission libcurlez-1.0.0.tar.gz (7b32b7b741dc)
Organization: Code Synthesis
Date: Wed, 17 Jan 2024 14:30:11 +0200
Message-ID: <[email protected]>
To: [email protected]

Hi Michael,

I see you tried to submit the same version again (presumably after
fixing the libcurl version constraint) which failed due to duplicate
submission. You will need to increment the package version for this
to succeed. You can either make a new revision (in which case it will
replace the current version) or a new version (e.g., patch, minor),
etc. While changing libcurl constraint is a good candidate for a
revision, I see you also have another commit with more substantial
changes, so a new version (probably minor) is a good idea.

For background, see:

https://build2.org/build2-toolchain/doc/build2-toolchain-intro.xhtml#guide-versioning-releasing

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.