golang print echo.Context значения

Я новичок в Go и пытаюсь проверить аргумент метода. У меня есть следующий код

func (c *controller) OrderNew(ctx echo.Context) error {

Когда я пытаюсь либо:

    fmt.println(ctx)
    fmt.Printf("%v \n", ctx)

я получил

&{0xc4200f21e0 0xc4202302d0 /order [] [] map[] 0x4092860 map[site_key:2] 0xc4200bb6c0}

Я понимаю, * контроллер является указателем, а возвращаемые значения содержат адреса, но я не уверен, как на самом деле отлаживать или проверять дальше. Я также вижу функции, вызываемые на cxt, как

ctx.Get and ctx.Render

которые я понимаю, являются функциями в echo.Context

Любая помощь / разъяснения приветствуется. Спасибо!

2 ответа

использовать "журнал"

log.Printf("КОНТЕКСТ% +v", ctx)

  • https://echo.labstack.com/guide/context - отличный источник для изучения эха.

  • офлайн есть godoc функциональность, которая помогает понять любой пакет (который загружается на вашем компьютере). В вашем случае это можно сделать, godoc github.com/labstack/echo Context в вашей командной строке.

  • Есть функции GOTO, многие редакторы, которые позволяют вам видеть исходный код библиотеки, пока вы кодируете, например, https://github.com/fatih/vim-go, https://github.com/DisposaBoy/GoSublime. Они позволяют вам перемещаться по этим функциям и структурам до точки, в которой они определены. Надеюсь, кто-то напишет четкий документальный комментарий.

  • если все, что вам нужно, это следить за выполнением вашего кода, вы можете использовать средства отладки, такие как delve https://github.com/derekparker/delve.

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