📘 Premium Read: Access my best content on Medium member-only articles — deep dives into Java, Spring Boot, Microservices, backend architecture, interview preparation, career advice, and industry-standard best practices.
✅ Some premium posts are free to read — no account needed. Follow me on Medium to stay updated and support my writing.
🎓 Top 10 Udemy Courses (Huge Discount): Explore My Udemy Courses — Learn through real-time, project-based development.
▶️ Subscribe to My YouTube Channel (172K+ subscribers): Java Guides on YouTube
In this tutorial, we will show how to make an HTTP GET request call with query parameters in Golang.
In Go, you can make a GET request with query parameters using the net/http package.
Golang - GET HTTP Request with Query Parameters
package main
import (
"fmt"
"io/ioutil"
"log"
"net/http"
"net/url"
)
func main() {
name := "Admin"
occupation := "Engineer"
params := "name=" + url.QueryEscape(name) + "&" +
"occupation=" + url.QueryEscape(occupation)
path := fmt.Sprintf("https://httpbin.org/get?%s", params)
resp, err := http.Get(path)
if err != nil {
log.Fatal(err)
}
defer resp.Body.Close()
body, err := ioutil.ReadAll(resp.Body)
if err != nil {
log.Fatal(err)
}
fmt.Println(string(body))
}
Note that the above example appends query parameters to the URL.
url.QueryEscape is used to properly encode the parameter values to handle special characters.
The log.Fatal function is used to handle errors by logging the error message and terminating the program.The defer resp.Body.Close() ensures that the response body is closed once the request is finished.
Run the following command to execute the go_example.go file:
G:\GoLang\examples>go run go_example.go
{
"args": {
"name": "Admin",
"occupation": "Engineer"
},
"headers": {
"Accept-Encoding": "gzip",
"Host": "httpbin.org",
"User-Agent": "Go-http-client/2.0",
"X-Amzn-Trace-Id": "Root=1-60d072dd-69515e203aad78b55270febd"
},
"origin": "103.208.69.12",
"url": "https://httpbin.org/get?name=Admin&occupation=Engineer"
}
Comments
Post a Comment
Leave Comment