Linking Hashlink and other targets to the role of a webserver.
class Main {
function main() {
var app = new weblink.Weblink();
app.get(function(request,response)
{
response.send("HELLO WORLD");
});
app.listen(2000);
}
}
- Uses libuv
- Minimal and concise with express lib in mind
- No dependencies, and easy integration
- Extremely fast, roughly 4x faster than Fastify with big data, and 2x with small Benchmark
Install dev version:
haxelib git weblink https://github.com/PXshadow/weblink
Include in build.hxml
-lib weblink
requires libuv (asys in the future)
- hashlink (uses libuv)
- more targets in the future using asys
- methods
- GET
- POST
- OPTIONS
- HEAD
- PUT
- encoding
- gzip
- compress
- deflate
- br
- caching
- age
- expires
- security
- extra
- content type
- bytes (png image for instance)
- redirects
- serve web content (files ex: html/images/sounds)
- connection public ip (haxe 4.2)
- projection (a type with certain attributes of another type, useful to send only some data)
-
Fork
-
Clone and setup
-
Configure VSCode :
Add that in .vscode/launch.json :
{ // Use IntelliSense to learn about possible attributes. // Hover to view descriptions of existing attributes. // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 "version": "0.2.0", "configurations": [ { "name": "HashLink (launch)", "request": "launch", "type": "hl", "cwd": "${workspaceFolder}", "preLaunchTask": { "type": "haxe", "args": "active configuration" } }, { "name": "HashLink (attach)", "request": "attach", "port": 6112, "type": "hl", "cwd": "${workspaceFolder}", "preLaunchTask": { "type": "haxe", "args": "active configuration" } } ] }
-
Develop (and press F5 to launch hashlink)
-
Pull request