草庐IT

图书列表API

全部标签

go - 尝试提取 API 请求 token 并包装我的处理程序

我想使用新的上下文来包装我的处理程序,这样我就可以在我的所有处理程序中使用一个用户结构(或者当前请求需要的任何其他内容来告诉我谁在发出请求)。我收到一个错误:funcmain(){router:=mux.NewRouter()router.HandleFunc("/api/v1/user/{id}",userService.GetUsers).Methods("GET")log.Fatal(http.ListenAndServe(":3001",router))}funcWithAuth(usUserService,nexthttp.Handler)http.Handler{retur

mysql - 获取结果列表并在一个查询中获取总数

我有用于分页的逻辑,它按原样工作得很好。这个问题旨在优化/改进我的工作方式。我正在运行两个查询来获取结果集。第一个查询按限制和偏移量获取所有项目,第二个查询获取总计数。我需要这个总数来计算表示层中的分页链接。我想避免运行两个查询,并尽可能将它们合并为一个。例如,如果数据库中有100个项目,我运行下面的查询时LimitStartIndex为1,LimitStopIndex为20,则查询应返回20结果和计数为100。我目前在两个单独的查询中很好地实现了这一点,但我想再次在一个查询中完成。这是我当前的设置(使用Golang):varitems[]*Itemerr:=r.db.Select(&

rest - 在 Golang 中向 Splunk REST API/search/jobs/endpoint 发送查询

我想向SplunkRESTAPI发送搜索/查询,并返回搜索ID以供稍后使用结果。我可以通过以下curl实现所需的行为:#!/bin/bashuser='my_user'pass='my_pass'search='searchindex=shortsourcetype=src|head5'curl-u$user:$pass-khttps://111.22.33.44:8089/services/search/jobs-dsearch="$search"返回:234523452435.6556_234234-3J3J-34J4-2345-123456678E3以下是我试图在其中实现相同目标

regex - 解析参数列表中以逗号分隔的逗号分隔值

所以我有这个正则表达式:=([0-9A-Za-z_-]+),?我需要一个像这样的字符串:foo=bar,pine=apple,tree,bar=bieorfoo=bar,pine=apple,treeorpine=apple,tree正则表达式适用于我只有1个值的情况。但是因为我们在键的值列表中有逗号。正则表达式只是乱码,我的代码完成了我想要它做的一半,但没有获得第二个值。我如何修复我的正则表达式以获取两个值,而不管它在字符串中的位置?单独,在另外2个之间,最后。我尝试了一些东西,但无法弄明白。尝试1:=([0-9A-Za-z,_-]+),=?在这种情况下,它匹配它在中间的那个,但它在

api - Go 语言 HTTPS API

我在使用Plesk的Windows中有一个服务器。我有一个域(example.com),我还为这个域购买了SSL证书。我刚刚安装成功并在我的服务器中配置了域和ssl。所以现在我可以使用https://www.example.com加入我的网站了或example.com并将重定向到https://....直到一切正常。但是现在我用GoLang开发了一个API,不知为何无法在443端口开始监听。(我想也许是因为已经被使用了?)所以我改成了8081端口。现在,当我想向我的API发出请求时,我必须使用https://www.example.com:8081/api/v1/users例如。问题是

go - 尝试将结构映射到我公开的 API 结构

我正在编写映射函数,将我的内部模型映射到我将在API中公开的模型。如何映射Locations属性。我在他们之上吗?我必须先初始化UserApi位置吗?我对如何在没有任何nil异常等情况下最好地做到这一点感到困惑。funcmapUserToApi(userUser)UserApi{api:=&UserApi{Id:user.Id,....}forindex,location:=rangeuser.Locations{///????????????}returnapi}funcmapLocationToApi(locationLocatio)LocationApi{..}typeUsers

go - 在 rest api 中使用 goroutine - 出现未定义的错误

我正在学习GO,想做一个简单的restAPI。我想做的是在处理完api请求后触发一个goroutine,并在后台异步完成工作。到目前为止,这是我的实现:packagemainimport("encoding/json""log""net/http""github.com/julienschmidt/httprouter")//APIResponserepresentscommonstructureofeveryapicallresponsetypeAPIResponsestruct{Statusstring`json:"status"`Errorstring`json:"error,o

pointers - func 列表中的 Golang funcs 取最后一个值

在下面的代码片段中,我创建了一个函数列表,在我看来,它应该包含打印数字012的函数。packagemainimport"fmt"funcmain(){flist:=make([]func(),0)fori:=0;i但是,flist中的所有函数都是相同的main.main.func1,输出为333即使i在循环中从未达到值3。这会让我觉得func只是获取i的地址,每次都创建相同的func,但是当稍后调用func时i超出范围。我在这里错过了什么? 最佳答案 如果我们考虑为这些函数生成的代码,它们确实是相同的:每次都使用相同的变量。即使i在

go - 通过 API 访问用户 GMail 帐户

我正在编写这个goroutine,它将调用GMailAPI并每2分钟左右轮询一次我的收件箱。我遇到的问题是身份验证部分,因为它需要我登录并验证自己并授权应用程序读取我的收件箱。我试图消除需要通过WebUI登录并授予对我的程序的访问权限的部分。有没有人对如何以编程方式登录和验证自己有任何想法? 最佳答案 您应该能够使用此处的步骤来生成OAuth客户端ID,然后使用它通过oauth进行连接?:https://github.com/google/GTMAppAuth/blob/master/Example-macOS/README.md否

以列表作为参数变量的 Golang 变异 (GRAPHQL)

基本上我想做的是发送一个字符串列表ex:["aa","bb","vv"]到graphqlMutation字段中,目前这是我的MutationSchema"listTest":&graphql.Field{Type:QueryMessageType,Args:graphql.FieldConfigArgument{"listNew":&graphql.ArgumentConfig{Description:"ExampleListofJsonString",Type:graphql.NewList(graphql.NewNonNull(graphql.String)),},},Resolv