我对Golang并不陌生,一直在尝试使用go-swagger生成REST API文档。我一直在关注
用于实现此目的的文章。我在应用程序中使用Gorrila Mux作为路由器。但是在注释了代码之后,当我尝试生成swagger.json文件时,出现类似这样的奇怪错误
cannot use &authModel (value of type *model.AuthLoginModel) as *model.AuthLoginModel value in argument to (service.AuthService literal).ValidateCredential
背景: 我创建了一个名为AuthLoginModel的结构,并添加了注释
// swagger:model
在定义的struct(位于其他模型包中)的顶部。在我的文件中,我正在创建AuthLoginModel类型的变量,并在名为ValidateCredential的函数中使用它,如下所示。
var authLM model.AuthLoginModel
{populate authLM}
validateCredentials(&authLM, {other parameters})
我的main.go的注释如下所示。
// Package rest HTTP API.
//
// Schemes: http
// Host: localhost
// BasePath: /api
// Version: 0.0.1
// Consumes:
// - application/json
// Produces:
// - application/json
// swagger:meta
package main
我对处理程序的注释如下所示
// swagger:operation POST /token/generate Token_generate
// Generates a token
//
// ---
// summary: Token Generation
// parameters:
// - in: body
// required: true
// schema:
// $ref: "#/token/generate"
// responses:
// responses:
// '200':
// description: successful operation
// schema:
// $ref: "#../../model/AuthLoginModel"
//