GO Lang中的HTTP POST引发错误

时间:2015-06-15 00:10:21

标签: go

我正在尝试在GO Lang中使用Post请求。 API URL期望在正文中将用户名和密码字段传递给它。但是我一直收到以下错误?

我不确定我在这里做错了什么?

错误

 url.Values undefined (type string has no field or method Values)

Go Function

func makeHttpPostReq(url string, username string, password string){

    client := http.Client{}
    req, err := http.NewRequest("POST", url, url.Values{"username": {username}, "password": {password}})
    req.Header.Add("Content-Type", "application/x-www-form-urlencoded")

    resp, err := client.Do(req)
    if err != nil {
         fmt.Println("Unable to reach the server.")
    } else {
         body, _ := ioutil.ReadAll(resp.Body)
         fmt.Println("body=", string(body))
    }

}

2 个答案:

答案 0 :(得分:3)

makeHttpPostReq的参数声明url是一个字符串,但是你将它视为结构url.Values,因此错误

  

没有字段或方法

答案 1 :(得分:0)

您正在重复使用import sys sys.path.append("**Put here the directory where you have the file with your function**") from file import function 字词。

url在您的情况下,将字符串解析为字符串而不是url