Use the http.NewRequest function to create a new GET request object, and set the request headers and parameters
In Go language, we can use the http.NewRequest
function to create a new GET request object and set request headers and parameters. http.NewRequest
The function accepts three parameters: request method, request URL and request body. We can use the http.MethodGet
constant to represent the GET request method, and use a string to represent the request URL to be sent. If there is no request body, you can pass in nil.
We first need to import the net/http
and fmt
packages:
import ( "fmt" "net/http" )
Then, we can use http.NewRequest
The function creates a new GET request object and sets the request headers and parameters. The sample code is as follows:
func main() { url := "https://example.com/api" req, err := http.NewRequest(http.MethodGet, url, nil) if err != nil { fmt.Println("创建请求失败:", err) return } // 设置请求头 req.Header.Add("Authorization", "Bearer token123") // 设置请求参数 query := req.URL.Query() query.Add("key1", "value1") query.Add("key2", "value2") req.URL.RawQuery = query.Encode() // 发送请求 client := http.Client{} resp, err := client.Do(req) if err != nil { fmt.Println("发送请求失败:", err) return } defer resp.Body.Close() // 处理响应 fmt.Println("状态码:", resp.StatusCode) }
In the above example, we created a GET request object and set the request headers and parameters. We can use the req.Header.Add
method to add the request header, use the req.URL.Query
method to get the query parameters of the request URL, and use the query.Add
Method adds parameters.
Finally, we use http.Client
to send the request and resp.StatusCode
to get the status code of the response. Here we use the defer resp.Body.Close()
statement to ensure that the response body is closed after use to avoid resource leaks.
Summary: Use the http.NewRequest
function to easily create a new GET request object and set the request headers and parameters. We can add request headers and parameters by calling relevant methods. The code for sending requests and processing responses is also very simple, just pass http.Client
and resp.StatusCode
. Such code has a clear structure and is easy to expand and maintain.
The above is the detailed content of Use the http.NewRequest function to create a new GET request object and set the request headers and parameters. For more information, please follow other related articles on the PHP Chinese website!