发布带有数据的请求

我正在尝试访问这样的 API:


package main


import (

    "bytes"

    "fmt"

    "io/ioutil"

    "net/http"

    "net/url"

)


func main() {

    apiUrl := "https://example.com/api/"

    data := url.Values{}

    data.Set("api_token", "MY_KEY")

    data.Add("action", "list_projects")

    req, _ := http.NewRequest("POST", apiUrl, bytes.NewBufferString(data.Encode()))

    client := &http.Client{}

    resp, err := client.Do(req)

    defer resp.Body.Close()

    if err == nil {

        body, _ := ioutil.ReadAll(resp.Body)

        fmt.Println(resp.Status)

        fmt.Println(string(body))

    }

}

但是来自 API 的响应告诉我 POST 请求中没有数据。


如果我用 curl 这样做,它会起作用:


$ curl -X POST "https://example.com/api/" -d "api_token=MY_KEY" -d "action=list_projects"



达令说
浏览 141回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go