octaneweb / octane Goto Github PK
View Code? Open in Web Editor NEWA web server modeled after express in Rust.
License: MIT License
A web server modeled after express in Rust.
License: MIT License
Create a private reader.rs that handles the parsing and can be called
Is your feature request related to a problem? Please describe.
no
Describe the solution you'd like
feature flags for e.g. ssl, tls, http2 etc.
Allow octane to integrate with existing template engines like Tera
Would love it if anyone is up for contributing to the project, we are running short of contributors
Is your feature request related to a problem? Please describe.
Cookies are not tied to a expiration date/lifetime
Describe the solution you'd like
Ask the user for a Duration
and form a expiration date from it and send it with Set-Cookie
Describe alternatives you've considered
None
Describe any implementations if you have one
None
Document all the methods and structs with valid examples (when needed)
Implementation right now ignores the case of headers and converts it to lowercase
Abandon/deprecate octane-json and bring in serde types behind a feature flag
Remapping project structure in the following way (suggestions always welcome)
octane_http1x
octane_http2
octane_http3
octane_multipart
octane_router
...
Basically, sub crates for each component, that way it's easy to hide them behind feature requests and code is in better and findable places
Get body parsing working, combine headers into a hashmap, and combine those into a data structure.
If the length of the HTTP request is a multiple of BUF_SIZE, then the server will keep trying to read data despite there being no more data to read.
Allow/enable gzip compression/decompression
Finish http2 parsing
Implement static file serving middleware, the method should return a closure and should be used like
let mut app = Octane::new();
// without route
app.add(Octane::static_dir("directory"));
// with route
app.add_route("/route", Octane::static_dir("directory"));
Add more (commonly used) mime types that the browser supports
Add support for https protocol. Validate certs and server https pages, add rustls/OpenSSL behind a #[feature]
Is your feature request related to a problem? Please describe.
User cannot redirect to a page.
Describe the solution you'd like
None
Describe alternatives you've considered
None
Describe any implementations if you have one
None
Describe the bug
Octane panics when you run it with rustls
To Reproduce
feature = ["rustls"]
let mut app = Octane::new();
let mut config = OctaneConfig::new();
config
.ssl
.key("templates/key.pem")
.cert("templates/cert.pem");
app.with_config(config);
Expected behavior
The site should work on https://localhost:8080/
, instead panics when you try to start the server
Screenshots
None provided
Version of octane:
0.1
Detect the requested content efficiently, use the file system to locate the file, generate the response, and server the format.
Fully Upgrade to tokio 0.3
Use https://docs.rs/cookie/ for cookie parsing
Create and manage certs for the server. Use the file_handler to open certs
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.