我正在寻找一个关于如何使用Golang执行请求的快速教程,模拟使用curl时的请求方式。我有两个API需要通信,它们本质上是相同的。一个是ElasticSearch,另一个是飞利浦Hue。我知道这两个都有Go语言库,但我想学习如何自己实现:
$ curl -XGET 'http://localhost:9200/twitter/tweet/_search' -d '{
"query" : {
"term" : { "user" : "kimchy" }
} }'
用Golang编程时,我发现大部分人似乎都在进行硬编码。
http://url:port/api/_function?something=value?anotherthing=value...
但是我已经在软件中使用了JSON对象。是否有一种方法可以使用JSON字符串、结构体或类似的东西来模拟CURL的-d功能?
curl
可以实现,但不建议在 GET 请求中发送请求体。尽管规范没有禁止这样做,但服务器不一定需要解析它。 - JimB