草庐IT

Golang常见面试题及解答

全部标签

go - 我如何在 golang 中使用本地包?

这个问题在这里已经有了答案:Error"can'tloadpackage:packagemy_prog:foundpackagesmy_progandmain"(3个答案)关闭4年前。这里有两个.go文件。├──lib.go└──main.golib.go有一个包libtest。$catlib.gopackagelibtestimport("fmt")funcTestLibFunc(){fmt.Println("Thisistestlibraryfunction")}main.go有一个包main。$catmain.gopackagemainimport("libtest")funcm

go - 如何在 Golang 中构建 URL/查询

背景-我需要根据来自表单的用户输入构建一个URL/查询,该表单将用于进行API调用。问题-构建URL时,参数未正确转义。例如,查询“badsanta”以空格结尾,而不是“+”。当前输出-e.g.https://api.example.org/3/search/movie?query=badsanta&api_key=#######预期输出-e.g.https://api.example.org/3/search/movie?query=bad+santa&api_key=#######代码示例-根网址-varSearchUrl="https://www.example.org/3/se

go - &http.Client 在 Golang 中,需要解释

我找到了下面的代码客户端:=&http.客户端&是什么意思?clientvar接收什么样的值 最佳答案 &是“指针”运算符,类似于c.client变量包含指向http.Client值的指针。 关于go-&http.Client在Golang中,需要解释,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/52923549/

go - 如何使用 Golang 获取发布的二进制数据的文件名?

我使用PostmanRESTAPI客户端将一个csv文件作为二进制文件发布。我需要获取上传文件的文件名。这是一个将csv文件作为二进制数据发布并将二进制数据存储为csv文件的简单示例。packagemainimport(//"fmt""net/http""os""io""log""github.com/gorilla/mux")funcuploadData(whttp.ResponseWriter,req*http.Request){file,err:=os.Create("hello.csv")_,err=io.Copy(file,req.Body)_=err}funcmain(){

if-statement - golang if 初始化语句作用域为内部 if block 。为什么?

这个问题在这里已经有了答案:Golangmixedassignmentanddeclaration(4个答案)关闭4年前。我在我的代码中发现了一个错误funcreceive()(errerror){ifv,err:=produce();err==nil{fmt.Println("value:",v)}return}此函数永远不会返回错误,但我绝对确定它应该返回。经过一些测试,我了解到err在if语句中被重新声明。不仅如此-所有变量总是在if语句内的短变量赋值中重新声明,尽管它们之前已经声明过。这是工作代码funcreceive()(errerror){v,err:=produce()i

go - 未定义的func,即使在golang中导入

我在GitHub下有一个项目,并且在我的机器上本地工作。下面是项目的结构.weather:-weather-service.go-darksky-provider.go.grpc-weather:-weather.protoserver.goserver.go文件的完成如下:import(pb"github.com/scayetanot/weather_service_go/grpc_weather""net""log""golang.org/x/net/context""google.golang.org/grpc""google.golang.org/grpc/reflection

go - 如何在golang中将 slice 附加到字节数组

我尝试将动态slice传递给这个jsonstrslicevarcatlist[]stringvarjsonStr=[]byte(`{"categoryList":`+catlist+`}`)但是我得到了这个错误invalidoperation:"{\"categoryList\":"+catlist(mismatchedtypesstringand[]string)如何修复这个错误 最佳答案 您正在连接string和[]string!!这是不可能的!你必须使用json包:Packagejson

Golang升序

我这里有一个Go语言问题,与下面我的相比,有没有更好的方法来回答编码Golang的答案?Mangkuk是由最大尺寸的Sudu组成的列表。Sudu是连续整数的排列,可能包含重复项。Cawan是Mangkuk,其中每个Sudu都按升序排序。编写函数MakeCawan(→Mangkuk),将给定的Mangkuk排序为Cawan。Forexample,MakeCawan([21,20,18,20,18,20,19]),MakeCawan([21,2000000,18,20,18,20,19]),MakeCawan([21,20,18,20,18,20,1900000])shouldproduc

rest - 如何在 golang 中将字符串添加到 URL?

我是golang的新手,第一次尝试这个。我必须调用yahoofinanceapi(YQL)以获取json格式的代码的股票价格。这是API:http://query.yahooapis.com/v1/public/yql?q=select%20LastTradePriceOnly%20from%20yahoo.finance.quote%20where%20symbol%20in%20(%22AAPL%22,%22FB%22,%22GOOG%22)&format=json&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys现在我已经在

go - 如何使用golang在Web应用程序中将静态IP更改为动态IP?

我在谷歌上搜索过,但他们显示要更改系统的ip。但是我需要针对我的特定Web应用程序进行更改,因为我有一个配置文件,我已经用ip端口号标记了DB_infotype="postgres"ip="10.11.0.17"port="5432"但每次我都需要更改其他系统的ip。所以我需要在golang中将其设为动态ip而不是静态ip。 最佳答案 很难理解您真正需要什么,但我的心灵感应技能告诉我,您只想知道如何从文件加载数据库配置。如果我是对的,就有解决方案。你的config.xml此config.xml的代码packagemainimport