问题标签 [martini]
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.
go - 如何用马提尼酒输出 CSV?
我想用马提尼将 CSV 数据打印到输出中。目前,我一直使用r.JSON(200, somestruct)
where r
is a render.Render
from github.com/martini-contrib
。
现在我有一片结构,我想将它们打印为 CSV(将单个结构的每个字段字符串化并在一行打印一个结构)。
目前,我这样做:
但我不喜欢我这样做的方式,原因如下:
- 它是直接下载的,不会打印到屏幕上。
- 我明白了
http: multiple response.WriteHeader calls
- 我不希望手动进行此操作(结构有更多字段,但所有字段都是
ìnt64
,float64
或time.Time
.
如何以更简单的方式实现 CSV 导出选项?
go - 去处理 HTML 表单数据
我无法从 HTML 表单中获取数据。模板显示在 localhost:3000,我提交并被带到 localhost:3000/results,结果为“404 page not found”。URL 不包含任何表单字段。
模板是:form.gtpl
go - 社交网络 vk auth 与马提尼酒
我正在尝试将vk auth与martini一起使用。但是编译时出错:
问题是如何定义YourRedirectFunc
功能。或者,如果问得更广泛,我需要martini
使用社交网络身份验证的应用程序示例,或者更广泛地需要vk
使用身份验证的任何 golang 网站的示例vk
。
完整代码:
更新
我根据@Elwinar 的回答编辑了我的代码:
现在没有编译错误,但仍然无法登录。当我打开时,http://localhost:3000/vk/auth
我被重定向到页面...
...并得到以下浏览器输出:
当然,而不是4672050
我粘贴我的应用程序 ID。这个应用程序是专门为localhost:3000
. 也许我需要将我的私钥粘贴到 oauth 之类的地方pYFR2Xojlkad87880dLa
。
更新 2
@qwertmax 的回答几乎有效。我已经通过 vk 成功登录,但我的代码打印空行而不是userId
另一个用户信息:
go - Go 简单的 API 网关代理
我一直在互联网上搜索如何做到这一点,但我一直无法找到它。我正在尝试使用 Go 和 Martini 为我的系统构建一个简单的 API 网关,该系统具有一些运行 REST 接口的微服务。例如,我的users
服务运行在 上192.168.2.8:8000
,我想通过/users
所以我的 API 网关看起来像这样:
编辑
我有一些工作,但我看到的是[vhost v2] release 2.2.5
:
编辑 2
这似乎只是直接通过浏览器使用时的问题,XMLHttpRequest
工作得很好
testing - Golang with Martini:模拟测试示例
我已经整理了一段代码,它在我的路线上执行 GET。我想使用模拟来测试它。我是围棋和测试新手,因此非常感谢任何提示。
我的 Generate Routes.go 为当前 URL 生成路由。片段:
这在我的 server.go 中被调用,如下所示:
我的疑惑:
考虑到我正在尝试注入依赖项,这里的模拟是如何工作的?
我应该从哪里开始测试,即我应该在 Generate Routes 中模拟 r.Get 吗?现在,我已经这样做了,但是由于我使用的是处理所有路由和请求的 Martini,如果我所做的是正确的,我会迷路吗?
state_test.go:
我参考过的链接:
sql - 如何在 SQL 查询中将 URI 作为字符串附加
看起来很简单,但我无法实现。浏览domain.com/post/1
时,应显示行id
中的数据值1
。
行id
是整数 ( int4
)。
在代码下方,这不起作用:
mongodb - 使用 mgo.Monotonic 从二级读取
我正在尝试配置从 mongo 副本集的主节点和两个辅助节点读取以提供更好的负载平衡。3 个节点中的每一个都位于具有 IP 地址的不同机器上:ip1、ip2、ip3。
我的GoLang
网站,它是martini
具有两个 url/insert
和的 Web 服务器/get
:
我使用命令运行这个GoLang
站点go run site.go
并准备我请求的实验http://localhost:3000/insert
- 大约一分钟后我的测试数据被插入。
然后我开始测试从辅助节点和主节点的读取attacker.go
:
运行它,go run attacker.go
我每秒请求 URL http://localhost:3000/get
4000次。当攻击者工作时,我打开了我所有的 3 台服务器并运行htop
命令来观察资源消耗。PRIMARY 节点显示它处于高负载状态,CPU 大约为 80%。中学很平静。
为什么?
正如我用mgo.Monotonic
...
...我希望从所有节点读取:ip1, ip2, ip3
并且我希望在相同负载和相同 CPU 消耗下观察所有节点。但事实并非如此。我配置错了什么?实际上mgo.Monotonic
在我的情况下不起作用,我只从PRIMARY节点读取。
postgresql - Go:模板中来自 PostgreSQL 的变量不是输出值(Echo 框架)
许多代码取自 Martini 示例,但这使用了 Echo 框架。
我可以让它在 Martini 中工作,但不能在 Echo 中工作。
server.go
:
public/views/testhere.html
:
我无法弄清楚,因为没有错误消息,也没有这个框架的 SQL 文档。运行时,它给出:
Book title is
(变量不是输出值)
html - Golang & Martini 代码块
我正在尝试定义将在基本模板中定义的代码块。我不想将一个页面上需要的所有脚本都包含到另一个不需要它的页面上。
我在用:
基本上我想做的是:
在布局上admin.tmpl
::
和上new.tmpl
:
当我改用模板时,它似乎起作用了。
但是我注意到我不能定义一个以上的模板,这有点违背了我想要实现的目标。
index.tmpl
new.tmpl
layout.tmpl
会抛出一个PANIC
template: redefinition of template "footer_extra"
go - Go Martini 中的 Auth0
我正在尝试在 Go 中将 Auth0 与 Martini 一起使用。我正在使用他们的示例,但无论我尝试什么,我似乎都无法让它工作。
这是我的代码:
当我运行它时,我会感到恐慌,说Value not found for type http.Handler
如果我将 更改jwtMiddleware.Handler
为jwtMiddleware.HandlerWithNext
,我会为Value not found for type http.HandlerFunc
.
有谁知道我做错了什么?