The ngrok Agent SDK
ngrok is a globally distributed reverse proxy commonly used for quickly getting a public URL to a service running inside a private network, such as on your local laptop. The ngrok agent is usually deployed inside a private network and is used to communicate with the ngrok cloud service.
This is the ngrok agent in library form, suitable for integrating directly into Rust applications. This allows you to quickly build ngrok into your application with no separate process to manage.
See /ngrok/examples/ for example usage, or the tests in
/ngrok/src/online_tests.rs.
For working with the ngrok API, check out the ngrok Rust API Client Library.
If you're looking for the agent wrapper, it's over here. See UPGRADING.md for tips on migrating.
Installation
Add ngrok to the [dependencies] section of your Cargo.toml:
...
[]
= "0.8"
...
Alternatively, with cargo-edit:
Quickstart
Create a simple HTTP server using ngrok and axum:
use SocketAddr;
use ;
use *;
async
License
This project is licensed under either of
- Apache License, Version 2.0, (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in ngrok by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.