ProxyKit
C++ REST SDK
ProxyKit | C++ REST SDK | |
---|---|---|
3 | 13 | |
1,082 | 7,816 | |
- | 0.5% | |
3.1 | 3.6 | |
over 3 years ago | 5 months ago | |
C# | C++ | |
Apache License 2.0 | 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.
ProxyKit
-
Microsoft YARP
Worth noting that YARP (or as someone has eloquently described it as PRAY) here was another Microsoft project which basically killed a previous open source project which did the same thing:
https://github.com/proxykit/ProxyKit
-
How to migrate PHP Laravel API to ASP.NET Core?
This actually feels like one of the instances that PeachPie with a combination of ProxyKit or YARP would be handy.
-
ASP.NET Core WebApi Authentication with Identity
You could setup a proxy with ProxyKit in you WebHost. Your blazor app will send requests to, say http://webhost:5000/api/endpoint. The host will then forward the request to http://webapi:3000/endpoint (or whatever). You'll have to setup some kind of JWT authentication where the WebHost generates a JWT on login and saves it in the cookie. Good thing here is, the cookie really only contains some id the server uses to look up the actual contents of the cookie. Only the cookie gets returned to the browser (blazor app). On each api request, the webhost will fetch the token out of the server-side cookie and append it to the Authorization header. The webapi will validate the token and return the response that will be proxied back to your front-end.
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?
ASP.NET Core - ASP.NET Core is a cross-platform .NET framework for building modern cloud-based web applications on Windows, Mac, or Linux.
Boost.Beast - HTTP and WebSocket built on Boost.Asio in C++11
YARP - A toolkit for developing high-performance HTTP reverse proxy applications.
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
ASP.NET Boilerplate - ASP.NET Boilerplate - Web Application Framework
Restbed - Corvusoft's Restbed framework brings asynchronous RESTful functionality to C++14 applications.
AspNetCore.Proxy - ASP.NET Core Proxies made easy.
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.
Bitwarden - The core infrastructure backend (API, database, Docker, etc).
Simple-WebSocket-Server
.NET Runtime - .NET is a cross-platform runtime for cloud, mobile, desktop, and IoT apps.
drogon - Drogon: A C++14/17 based HTTP web application framework running on Linux/macOS/Unix/Windows [Moved to: https://github.com/drogonframework/drogon]