Ошибка диафрагмы - Неразрешенный "Получить"

Это мой код

`package main 
 import "github.com/kataras/iris"
 func main()    {
     iris.Get("/hi",    func(ctx    *iris.Context)  {
         ctx.Writef("Hi %s",    "iris")
     })
     iris.Listen(":8080")
 }`

У меня есть "иди -u github.com/kataras/iris/iris", это то, что я получаю, и я выжил и до сих пор не могу решить эту проблему.

./IRIS.go:6: undefined: iris.Get
./IRIS.go:9: undefined: iris.Listen

Я впервые пробую этот фреймворк. Я проследовал со страницы https://docs.iris-go.com/ Хотя это было бы легко, но на самом деле это не так, я могу установить только радужную оболочку, и это мой первый худший привет Мир

Я использую Intellij Idea в качестве своей IDE

Помогите мне, пожалуйста. Спасибо

2 ответа

Если Go 1.8 остается основным хостом для ваших приложений go, вы должны объявить и использовать пакет github.com/kataras/iris/context в операторе импорта вашего исходного файла.

package main
import (
"github.com/kataras/iris"
"github.com/kataras/iris/context"
)

func main() {
app := iris.New()
app.RegisterView(iris.HTML("./views", ".html"))

app.Get("/", func(ctx context.Context) {
    ctx.ViewData("message", "Hello world!")
    ctx.View("hello.html")
})

app.Run(iris.Addr(":8080"))
}

Это забавно, потому что на https://github.com/kataras/iris и на https://iris-go.com/ и https://docs.iris-go.com/ есть много примеров таких вещей, которые вы тратите на то, чтобы спросить что, вы, вероятно, проверили сторонний форк Iris, а не сам Iris, где вы нашли этот фрагмент кода?

Правильный путь:

package main 
import "github.com/kataras/iris"
func main()    {
    app := iris.New()
    app.Get("/hi", func(ctx iris.Context)  { // go > 1.9
        ctx.Writef("Hi %s", "iris")
    })
    app.Run(iris.Addr(":8080"))
}

Вот еще один пример, простой сервер, который представляет файл шаблона с сообщением клиенту:

// file: main.go
package main
import "github.com/kataras/iris"

func main() {
    app := iris.New()
    // Load all templates from the "./views" folder
    // where extension is ".html" and parse them
    // using the standard `html/template` package.
    app.RegisterView(iris.HTML("./views", ".html"))

    // Method:    GET
    // Resource:  http://localhost:8080
    app.Get("/", func(ctx iris.Context) {
        // Bind: {{.message}} with "Hello world!"
        ctx.ViewData("message", "Hello world!")
        // Render template file: ./views/hello.html
        ctx.View("hello.html")
    })

    // Method:    GET
    // Resource:  http://localhost:8080/user/42
    app.Get("/user/{id:long}", func(ctx iris.Context) {
        userID, _ := ctx.Params().GetInt64("id")
        ctx.Writef("User ID: %d", userID)
    })

    // Start the server using a network address.
    app.Run(iris.Addr(":8080"))
}

<!-- file: ./views/hello.html -->
<html>
<head>
    <title>Hello Page</title>
</head>
<body>
    <h1>{{.message}}</h1>
</body>
</html>

$ go run main.go
> Now listening on: http://localhost:8080
> Application started. Press CTRL+C to shut down.

Если вам когда-нибудь понадобится помощь с Iris, вы всегда можете связаться со службой поддержки через чат https://chat.iris-go.com/. Хорошего дня!

Другие вопросы по тегам