我在Golang项目中工作,我需要通过外部API执行一些操作:GET,PUT,POST和DELETE。目前正在使用net/http
我创建了一个&http.Client{}
来制作GET和PUT,这是按预期工作的。
现在我需要执行DELETE而我找不到任何关于它的信息,是否支持?我需要打电话基本上是这样的网址:
somedomain.com/theresource/:id
Method: DELETE
我该怎么做?
答案 0 :(得分:7)
以下是如何操作的一个小例子:
package main
import (
"fmt"
"io/ioutil"
"net/http"
)
func sendRequest() {
// Request (DELETE http://www.example.com/bucket/sample)
// Create client
client := &http.Client{}
// Create request
req, err := http.NewRequest("DELETE", "http://www.example.com/bucket/sample", nil)
if err != nil {
fmt.Println(err)
return
}
// Fetch Request
resp, err := client.Do(req)
if err != nil {
fmt.Println(err)
return
}
defer resp.Body.Close()
// Read Response Body
respBody, err := ioutil.ReadAll(resp.Body)
if err != nil {
fmt.Println(err)
return
}
// Display Results
fmt.Println("response Status : ", resp.Status)
fmt.Println("response Headers : ", resp.Header)
fmt.Println("response Body : ", string(respBody))
}