Skip to content

Lightweight HTTP C++ library / curl wrapper for web scrappers, session emulators, restful applications inspired by Laravel HTTP client / Guzzle

Notifications You must be signed in to change notification settings

violanes/muskrat_http

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MuskratHTTP C++ HTTP client

About

Muskrat is a lightweight HTTP client and curl wrapper written in modern C++ inspired by Laravel HTTP client/guzzle. Muskrat provides many useful features for purposes such as web scrapping, session emulation, oauth processing, and REST API calls.

It's a header only thread safe library written in C++ 17 with only one dependency.

Documentation | Examples

Features

  • Ability to send custom request headers
  • Ability to set cookies
  • GET/POST methods support
  • Automated request retry on failure
  • Configurable timeouts
  • Flexible and simple request builder
  • Request authorization support
  • Proxy support
  • Thread safety

Dependencies

  • libcurl (8.0.0+ version recommended)

Why?

I've had several projects that require advanced web scrapping and session emulation lately. Although the requirements are not rocket science, I struggled to find decent http client that would suit my needs yet be lightweight and easy to maintain, that's why I paid with one hour of my time in bed for this project creation. It's heavily inspired by Laravel HTTP client (guzzle wrapper), so you can find lots of similarities between the two.

Why muskrat?

Muskrats are cool, and there are a lot of them in Khabarovsk. I would've written here more explanation and what I think, but 280.1 won't let me.

Peace to you and your home

About

Lightweight HTTP C++ library / curl wrapper for web scrappers, session emulators, restful applications inspired by Laravel HTTP client / Guzzle

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published