この章では、Goのiris WebフレームワークがHTTPリクエストをどのように処理するかを紹介します。Irisは、HTML、JSON、JSONP、XML、Markdown、YAMLなど、さまざまなデータ形式をサポートしています。

注:Irisは主にctxコンテキストオブジェクトのパラメータを使用して、さまざまな形式でデータを返します。

HTMLデータを返す

app.Get("/", func(ctx iris.Context) {
    ctx.HTML("Hello <strong>%s</strong>!", "World")
})

JSONデータを返す

app.Get("/json", func(ctx iris.Context) {
    ctx.JSON(iris.Map{"message": "hello", "status": iris.StatusOK})
})

JSONPデータを返す

app.Get("/jsonp", func(ctx iris.Context) {
    ctx.JSONP(iris.Map{"hello": "jsonp"}, iris.JSONP{Callback: "callbackName"})
})

XMLデータを返す

app.Get("/xml", func(ctx iris.Context) {
    ctx.XML(iris.Map{"message": "hello", "status": iris.StatusOK})
})

Markdownデータを返す

app.Get("/markdown", func(ctx iris.Context) {
    ctx.Markdown([]byte("# Hello Dynamic Markdown -- iris"))
})

YAMLデータを返す

app.Get("/yaml", func(ctx iris.Context) {
    ctx.YAML(iris.Map{"message": "hello", "status": iris.StatusOK})
})