YARP
C++ REST SDK
Our great sponsors
YARP | C++ REST SDK | |
---|---|---|
35 | 13 | |
8,050 | 7,806 | |
5.0% | 0.9% | |
8.9 | 3.6 | |
1 day ago | 4 months ago | |
C# | C++ | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
YARP
-
Is Internet facing Kestrel in dotnet 7.0+ safe?
Adding to the other answers here, you might find some useful functionality in YARP if you want a pure .NET reverse proxy. Like Kestrel, Microsoft dogfoods YARP in Azure.
- Self hosting a proxy server, for use with HttpClient.
-
.NET Monthly Roundup - January 2023
➡️ Release 2.0.0-RC.1 · microsoft/reverse-proxy · GitHub ➡️ Visual Studio 2022 17.5 Preview 3 is here!
- converting framework4.8 webapps to NetCore (Net5,6,7). any apps available to help?
- Issue: ERR_SSL_PROTOCOL_ERROR for DigitalOcean Droplet
- Injecting a unique ID between two TCP streams
-
ASP.NET Core rate limiting middleware in .NET 7
In your application, you may be using YARP, to build a reverse proxy gateway sitting in front of various backend applications. For example, you may run YARP to listen on example.org, and have it proxy all requests going to this domain while mapping /api and /docs to different web apps running on diffreent servers.
-
Cloudflare Ditches Nginx For In-House, Rust-Written Pingora
Microsoft already made YARP for their Azure infrastructure, it's a "build your own reverse proxy" kit.
-
Running multiple processes on the same port in .NET Core 3.1
If I was to need one I would probably reach for YARP (Yet Another Reverse Proxy) from MS. https://microsoft.github.io/reverse-proxy/
-
Kestrel as a reverse proxy?
Microsoft's YARP is exactly this.
C++ REST SDK
-
What is the industry standard today in C++ to deploy REST microservices in Kubernetes?
My favourite was Microsoft's cpprestsdk, but for some reason now is in maintenance mode, I don't know why, so it's hard to suggest it for new projects. A nice alternative is restc-cpp, that's has a good high-level interface, if this is what you want.
-
REST APIs using C++. (Is this even done much?)
CppRestSDK is deprecated.
- C++ REST API Framework
-
REST library: production 'ready'
https://github.com/microsoft/cpprestsdk (concerned about being maintenance mode -> production?)
-
Have there been any attempts to build a REST API service on top of either Boost.asio or Boost.beast?
While it's not based on Boost Asio or Beast, Microsoft maintains a SDK for developing REST api's using C++, aptly named the C++ REST SDK. Here you can find the Github page. It pretty much covers everything you'd come to expect from a modern webserver package. It does come with a steep learning curve however.
-
Microsoft YARP
I never thought I'd laud microsoft on open source software but this has certainly made my life easier... I mean come on, MIT licensed and everything...
https://github.com/microsoft/cpprestsdk
-
Web services in C++
Assuming you want to make a REST API check this out: https://github.com/Microsoft/cpprestsdk
-
Thriving in a Crowded and Changing World: C++ 2006–2020 [pdf]
>But is it truly practical to use in 'higher-abstraction' apps like web or mobile?
Yes absolutely. Once you become familiar with the language the barrier is not that high. Familiarity trumps everything else.
That said, since i am not a Web/mobile developer i had collected some resources to help me learn how to use C++ for Web/Mobile apps, you may find it useful;
https://levelup.gitconnected.com/cross-platform-mobile-and-w...
https://github.com/Microsoft/cpprestsdk
https://medium.com/@ivan.mejia/modern-c-micro-service-implem...
-
cpprestsdk in maintenance mode
I was starting a project that needs to read data with rest API and I'd like to use cpprestsdk from Microsoft. But it's readme says that's in maintenance mode and it's not recommended for new projects... I'd like to know why it's in maintenance mode, and if it will be abandoned. Also, if there's some equivalent library for cpp, instead of creating the business logic from scratch, i.e. with boost::beast.
What are some alternatives?
envoy - Cloud-native high-performance edge/middle/service proxy
Boost.Beast - HTTP and WebSocket built on Boost.Asio in C++11
IdentityServer - The most flexible and standards-compliant OpenID Connect and OAuth 2.x framework for ASP.NET Core
libcurl - A command line tool and library for transferring data with URL syntax, supporting DICT, FILE, FTP, FTPS, GOPHER, GOPHERS, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, MQTT, POP3, POP3S, RTMP, RTMPS, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET, TFTP, WS and WSS. libcurl offers a myriad of powerful features
Keycloak - Open Source Identity and Access Management For Modern Applications and Services
Restbed - Corvusoft's Restbed framework brings asynchronous RESTful functionality to C++14 applications.
Serilog - Simple .NET logging with fully-structured events
POCO - The POCO C++ Libraries are powerful cross-platform C++ libraries for building network- and internet-based applications that run on desktop, server, mobile, IoT, and embedded systems.
Nginx - An official read-only mirror of http://hg.nginx.org/nginx/ which is updated hourly. Pull requests on GitHub cannot be accepted and will be automatically closed. The proper way to submit changes to nginx is via the nginx development mailing list, see http://nginx.org/en/docs/contributing_changes.html
Simple-WebSocket-Server
Fake JSON Server - Fake JSON Server is a Fake REST API that can be used as a Back End for prototyping or as a template for a CRUD Back End.
drogon - Drogon: A C++14/17 based HTTP web application framework running on Linux/macOS/Unix/Windows [Moved to: https://github.com/drogonframework/drogon]