Как эффективно парсить query параметры в http запросе на сервере golang?

Пользователь

от eudora , в категории: Golang , 8 месяцев назад

Как эффективно парсить query параметры в http запросе на сервере golang?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от narciso , 8 месяцев назад

@eudora 

В Go есть стандартная библиотека net/http, которая предоставляет инструменты для работы с HTTP запросами и ответами. Для парсинга query параметров в HTTP запросе на сервере вы можете использовать функцию ParseForm из пакета net/http.


Вот пример, который показывает, как можно парсить query параметры:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
package main

import (
	"fmt"
	"log"
	"net/http"
)

func handler(w http.ResponseWriter, r *http.Request) {
	// Парсинг query параметров
	err := r.ParseForm()
	if err != nil {
		log.Fatal(err)
	}

	// Получение значения query параметра по ключу
	name := r.Form.Get("name")
	age := r.Form.Get("age")

	// Вывод полученных значений
	fmt.Fprintf(w, "Name: %s
", name)
	fmt.Fprintf(w, "Age: %s
", age)
}

func main() {
	http.HandleFunc("/", handler)
	log.Fatal(http.ListenAndServe(":8080", nil))
}


Этот код принимает HTTP запросы на порту 8080 и парсит query параметры в функции handler. Затем значения параметров выводятся в HTTP ответе. Вы можете изменить код в соответствии со своими потребностями.