问题标签 [go-gin]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
16267 浏览

go - Go and Gin:为数据库上下文传递结构?

我刚刚开始尝试 Go,我希望用它重新实现一个用 node 编写的 API 服务器。

我在尝试使用依赖注入将数据库上下文作为 gin 中间件传递时遇到了障碍。到目前为止,我已将其设置为:

main.go:

模型/db.go

模型/votepack.go

因此,对于上述所有内容,我想将 models.DataSource 作为中间件传递,以便可以像这样访问它:

公共/public.go

但是我得到public\public.go:10: db.GetVotePack undefined (type interface {} is interface with no methods)

当我在调试器中检查(使用带有插件的 Webstorm)时,数据库只是一个空对象。我正在努力做好并避免使用全局变量

0 投票
1 回答
4181 浏览

rest - Golang 测试基于 gin 的 REST API 在使用 net/http/httptest 时没有获取参数

我正在开发一个基于 Gin golang 的 REST API,端点如下所示:

当我通过浏览器和 cURL 向端点发出请求时,它工作正常,获取 carType 值,但是当我运行测试时,它返回错误请求并且获取 carType 是“”。

为了测试端点,我的测试代码如下所示:

我究竟做错了什么?

0 投票
2 回答
3250 浏览

json - 从 Postgres 到 Golang 的嵌套 JSON 结果

我正在使用杜松子酒gorp

SQL:

结果: 在此处输入图像描述

戈朗

并使用以下方法返回结果:c.JSON(200, gin.H{"data": projects})

如果只有一个项目,它可以工作

在此处输入图像描述

但如果有多个项目,则会出现以下错误:

错误:json: error calling MarshalJSON for type json.RawMessage: invalid character '"' after top-level value

有什么建议么?

PS:我是Golang的新手

0 投票
1 回答
9125 浏览

go - 如何使用 golang gin 为 restful API 创建身份验证模型?

我希望为我的 restful API 创建一个身份验证模型。希望使用 API 令牌,我在 Web 服务中使用 MVC,我创建了一个像这样的 auth.go 控制器。

它现在不起作用可以有人帮助做到这一点还是有任何例子可以参考?

0 投票
2 回答
4637 浏览

mysql - 全选在 golaong gorm 中不起作用

我正在使用 gin 框架并尝试使用 grom 进行 crud 操作。我正在尝试从 MYSQL 数据库中获取数据。我有 db.go 来获取数据库实例,每个表和模型的一些控制器我有这样的模型

这是我正在使用的一个控制器

要获得我正在使用的数据库连接

我正在使用以下路线

当我运行它时,我收到以下错误

这个错误的原因是什么?帮我解决这个错误?

0 投票
2 回答
4420 浏览

go - Gin 路由器:路径段与现有通配符冲突

我想让我的应用程序服务于以下事物。

  • a.com => 向浏览器提供 /www 以便浏览器可以查找 /www/index.html)
  • a.com/js/mylib.js => 向浏览器提供 /www/js/mylib.js
  • a.com/api/v1/disk => 返回 JSON 的典型 REST API
  • a.com/api/v1/memory => 另一个 API

我做了如下代码:

当我运行代码时,它会恐慌:

我明白它为什么会恐慌,但我不知道如何解决。

我脑子里只有两件事:

  1. 使用 NoRoute() 函数将处理除 /api/v1 组路径以外的其他函数(不知道我是如何实现的)
  2. 使用中间件。有静态中间位置https://github.com/gin-gonic/contrib但代码在 Windows 上不起作用(https://github.com/gin-gonic/contrib/issues/91

先感谢您。

0 投票
1 回答
10930 浏览

go - gin-gonic 是否并行处理请求?

我们有一个基于 gin-gonic 的用 go 编写的 API 服务器。我们注意到一些奇怪的东西,这让我们相信它是在串行处理请求,而不是预期的并行操作。考虑这个日志文件:

实时查看日志,直到第二次调用完成后才会显示最后 3 个条目。这五个调用是在 5 毫秒内对 API 进行的。我们希望调用应该并行处理。这意味着所有呼叫都应在 17:24:40 之前完成,而不是 17:24:43。IE:当建立连接来处理请求时,服务器会产生一个新的线程/goroutine。如果不是这种情况,是否有人对以这种方式工作的软件包有任何建议。

这是我们第一个使用 gin-gonic 的项目,我想知道是否需要设置一些配置参数。任何想法/建议表示赞赏。

0 投票
1 回答
1247 浏览

http - Go gin-framework:使用 cURL 测试查询和 POST

我正在尝试gin 框架的 README 中的代码示例(“另一个示例:查询 + 发布表单”):

使用 cURL 测试代码:

服务器返回:id: 2; page: 0; name: Maru; message: Nice

卷曲测试是否正确?为什么page返回的值不等于 3?

0 投票
1 回答
422 浏览

mongodb - 无法在 gin 中使用 mgo 将表单数据插入数据库

我是 Go 新手并使用 gin 框架尝试创建用户对象:

这是创建用户的控制器

登记表是:

在终端我得到:

如您所见username,字段值emailpassword传递给控制器​​。当我检查usersmongo 数据库中的集合时,我看到对象已创建但从表单提交的字段为空。我无法弄清楚为什么会发生这种情况,所以感谢您的提示。

0 投票
1 回答
546 浏览

go - go http模板模板中的额外数据泄漏

我正在使用gin库创建一个简单的 crud webapp。我有一个路由设置,它检查一个参数,id如果它应该被渲染,否则返回带有 id 的员工(如果存在)当我渲染获取错误消息的模板时渗入其中。这是一个快照addadmin-employee-add.htmladmin-employee-add.html404 not found在此处输入图像描述

管理员-员工-add.html

创建错误的路线

错误似乎是因为 gin 正在尝试重定向/add->/add/但我已经/add/在浏览器中使用该路由。

gin的调试日志

我尝试将路线更改为/:id然后显示错误。

注意:此错误可以通过在 .return末尾添加一个轻松解决if id == "add"。但是这种模式使代码看起来不那么枯燥。这似乎是一个更大的httprouter问题。