草庐IT

rest_array

全部标签

go - 使用 go-restful 和 swagger 显示 PUT 正文格式

我正在使用go-restful和swagger来生成运行良好的apidoc。我面临的问题是,当我向文档添加主体参数时,我想指定数据类型及其格式。我可以指定数据类型(即UserFields),但JSON的格式不会显示在SwaggerUI中,这非常方便。这是我正在谈论的一个例子:以下链接显示了主体参数及其旁边相应的JSON/模型http://petstore.swagger.wordnik.com/#!/store/placeOrder在我的例子中,缺少JSON/模型,只显示数据类型http://ibounce.co:8282/apidocs/#!/users/PutUserField这是

web-services - 在生产环境中部署 Go/Golang REST Web API

我正在为移动应用程序编写后端网络API。它应该支持HTTPS。我在.NET方面的大部分经验,但对于这个我想使用Go/Golang。我已经准备好示例服务,现在我需要确保它已准备好投入生产。在.NET中,我将只使用IIS,但我不知道什么是Go的好方法。我应该将nginx作为反向代理,还是最好使用FastCGI?以及如何确保我的go应用程序启动并在系统重启时运行?我应该使用upstart还是类似的东西? 最佳答案 我一直在将NginxFastCGI与Go网络服务一起使用-它们可以很好地协同工作。它的设置并不比HTTP反向代理难-除了必须学

arrays - 包含多个特定类型的固定大小数组?

我有一个数组(来自JSON),它始终包含一个字符串和一个int,如下所示:["foo",42]现在,我必须将[]interface{}与断言一起使用arr[0].(string)arr[1].(int)我想知道是否有任何方法可以指定数组中预期的类型?我在想象类似的东西..[...]{string,int}谢谢。 最佳答案 起初,答案是否定的。但是您可以从interface{}中获取您期望的类型的值。这个怎么样?packagemainimport("encoding/json""fmt""github.com/mattn/go-sca

rest - Go Gorilla Mux 没有按预期路由

我在使用Go的GorillaMux库时遇到问题。从我阅读的文档和我所做的所有调试中,我似乎无法弄清楚问题是什么。这是我的路由:文件夹结构:project_root|--main.go|--routes|--routes.go|--user.gomain.go:packagemainimport("fmt""net/http""./routes")funcmain(){r:=routes.CreateRoutes(http.Dir("./content"))http.Handle("/",r)err:=http.ListenAndServe(fmt.Sprintf("%s:%d","lo

arrays - Golang 读取 Json 对象数组

我正在使用GoLang并希望读取文件并能够将每个json对象发送到REST端点。除了REST端点,我在解析文件时遇到问题。packagemainimport("encoding/json""fmt""io/ioutil""bytes""os")funcmain(){typemyjsonstruct{myobjects[]struct{datamap[string]string}}file,e:=ioutil.ReadFile("dat_one_extract.json")ife!=nil{fmt.Printf("FileError:[%v]\n",e)os.Exit(1)}dec:=j

arrays - 返回空 slice

相当新。我试图基本上读取目录和子目录中的所有文件,填充到一个slice中,然后进一步处理。这是代码(要查看的主要功能是Main和expandDirectorypackagemainimport("fmt""io/ioutil""os")constdirnamestring="MyDirectory"funccheck(eerror){ife!=nil{panic(e)}}funcexpandDirectory(currentDirectorystring,allFiles[]os.FileInfo)[]os.FileInfo{files,e:=ioutil.ReadDir(curren

node.js - 如何在产品环境中保护我的 GO REST 服务?

我最近在处理GoREST服务,但我不知道是否有可用的生产就绪OAUTH2服务器?由于我的服务将由单页Web应用程序和移动客户端使用,并且用户应该能够注册他们的帐户,所以我正在考虑OAUTH2服务器。我一直在搜索,发现标准包只包含客户端代码https://github.com/golang/oauth2/blob/master/oauth2.go.Go中内置了一个OAUTH2服务器(https://github.com/RangelReale/osin),但我没有太多的专业知识来审查它。因此,生产应用程序有哪些可用选项?我是否应该使用以其他技术(如nodejs)实现的OAUTH服务器,因

arrays - GO:数组/slice 到常规字符串

我是golang的新手,也是编程的新手。前进对我来说非常艰难。这是一直让我感到困惑的一件事:数据类型。如果你运行这个(不是在Playground上)然后它会吐出:./main.go:40:cannotuserecorded(typestring)astypeSVCinappend如果我反转附加调用中的值,它会吐出:./main.go:40:firstargumenttoappendmustbeslice;havestring我想做的是抓取主目录中的所有内容,将所有修改后的值追加到数组中,然后使用ioutil将数组放入文件中。我想要的(截至目前)是将值附加到func记录中的slice。有

rest - 将呈现的电子邮件发送到 SendGrid 的最快方法

我们有一个内部(基于Golang)呈现服务,除了向电子邮件添加一堆配置值外,还可以简单地将模板与数据合并。下一步是通过SendGrid发送这些呈现的电子邮件。我从SendGrid的API文档中看到他们提供了RESTapi和SMTPapi。比方说,如果我们想发送600k封电子邮件,那么发出600k休息请求,即使有一些并发,也不会是最有效的方式。我还浏览了他们关于选择SMTPorRESTapi的文章但那里也没有明确的答案。对于上述情况,最优选/最有效的路线是什么? 最佳答案 我过去常常通过基本的smtp发送到sendgrid。这样一来,

arrays - 戈朗 : calculate diff between two array of bytes and patch an array

我试图找到两个字节数组之间的差异并存储增量。我已阅读此文档https://golang.org/pkg/bytes/但我没有找到任何说明如何找到差异的内容。谢谢。 最佳答案 听起来您只需要一个函数,该函数接受两个字节slice并返回一个新slice,其中包含输入slice中每个元素的差异。下面的示例函数断言输入slice都是非零的并且具有相同的长度。它还返回一个int16slice,因为字节差异范围是[-255,255]。packagemainimport"fmt"funcmain(){bs1:=[]byte{0,2,255,0}b