Skip to content

Networking

Wyn provides built-in networking through the Http and Net modules. No external dependencies required.

HTTP Client

wyn
// GET request
var body = Http.get("https://api.example.com/data")
println(body)

// POST request
var response = Http.post("https://api.example.com/users", "{\"name\": \"Wyn\"}")
println(response)

HTTP Server

wyn
fn main() -> int {
    Http.route("GET", "/", fn(req: string) -> string {
        return "Hello, World!"
    })
    Http.route("GET", "/api/status", fn(req: string) -> string {
        return "{\"status\": \"ok\"}"
    })
    println("Server running on :8080")
    Http.listen(8080)
    return 0
}

Working with JSON APIs

wyn
fn main() -> int {
    var body = Http.get("https://api.example.com/users")
    var doc = Json.parse(body)
    var name = Json.get(doc, "name")
    println("Fetched: ${name}")
    return 0
}

See Also

MIT License