当前位置: 首页 > 面试题库 >

转到net / http请求

有凯泽
2023-03-14
问题内容

有人可以帮我将红宝石代码转换为Go吗?请参考下面的红宝石代码。

 query=       "test"
 request =        Net::HTTP::Post.new(url)
 request.body =     query
 response =   Net::HTTP.new(host, post).start{|http http.request(request)}

去。


问题答案:

您似乎想发布查询,该查询类似于此答案:

import (
    "bytes"
    "fmt"
    "io/ioutil"
    "net/http"
)


func main() {
    url := "http://xxx/yyy"
    fmt.Println("URL:>", url)

    var query = []byte(`your query`)
    req, err := http.NewRequest("POST", url, bytes.NewBuffer(query))
    req.Header.Set("X-Custom-Header", "myvalue")
    req.Header.Set("Content-Type", "text/plain")

    client := &http.Client{}
    resp, err := client.Do(req)
    if err != nil {
        panic(err)
    }
    defer resp.Body.Close()

    fmt.Println("response Status:", resp.Status)
    fmt.Println("response Headers:", resp.Header)
    body, _ := ioutil.ReadAll(resp.Body)
    fmt.Println("response Body:", string(body))
}

如果您的查询是JSON查询,请将“ text/plain” 替换为“ ” application/json



 类似资料:
  • 问题内容: 我正在尝试将JSON参数发送到我的服务器,并使用json.Decoder解析它们。我读到您应该能够从request.Body属性获取查询参数。以下是我的服务器代码: 每次,我都会看到(当然是不同的时间戳记)。我的客户端AJAX调用如下: 发送内容的示例URL: 更好看一下参数: 我已经尝试了GET和POST请求。 为什么我的req.Body从不解码?如果我尝试单独打印req.Body,

  • 我正在尝试编写Go客户端来测试我们的超文本传输协议/2架构体系。我想向发出超文本传输协议请求,并期望收到html响应,以及几个推送的资源。我想确保那些推送成功,如果不成功则失败。 我不清楚标准库的任何部分是否公开了我需要的这个功能。 我可以查看响应并检查协议版本以检测http2。 我可以看到头在来自像https://http2-push.appspot.com/这样发送推送的站点的响应中,但我不太

  • 希望在Mulesoft HTTP请求中实现以下功能 卷曲“https://somedomain.com/1/1/1/search“ -X POST -H”授权:承载令牌”

  • 问题内容: 我有以下CURL请求,谁能请我确认subesquest HTTP请求是什么? 会是这样吗? 任何人都可以帮助我将上述curl请求完全转换为httpreq。 提前致谢。 苏维 问题答案: 有很多方法可以实现这一目标。在我看来,以下一项是最简单的,同意它不是很灵活,但是可以工作。

  • 我正在使用Golang执行get请求,我也尝试了三种不同的实现,但没有成功。对于所有这些,我收到这个错误消息: 收到https://11.11.11.1:0000/httpgw.conf?Type=SMS Bellow是我工作的整个源代码: 使用telnet时,此GET请求正常工作: telnet 11.11。十一点一零零零零 收到https://11.11.11.1:0000/httpgw.co

  • 问题内容: 我想问大家在请求HTTP Post消息时如何控制gzip压缩。Http请求标头中的“ Accept- Encoding:gzip”始终添加到我发送的HTTP请求中。但是我不想使用gzip压缩。我该如何处理? 我在执行http.NewRequest之前一直使用DisableCompression传输类型。而且我已经尝试将值true和false都设置为DisableCompression。