我正在開發(fā)一個(gè) Web 服務(wù)應(yīng)用程序,其端點(diǎn)/加密貨幣/匯率接受兩個(gè)貨幣“符號(hào)”作為輸入。Web 服務(wù)應(yīng)在數(shù)據(jù)庫(kù)中搜索這些字符之間的貨幣兌換數(shù)據(jù),如果數(shù)據(jù)庫(kù)中沒有值,或者時(shí)間戳值與當(dāng)前值相差超過 1 分鐘,則向服務(wù) API 發(fā)出請(qǐng)求:https : //min-api.cryptocompare.com/documentation 因此,我創(chuàng)建了結(jié)構(gòu)體和 go-chi 路由器。但我不知道如何構(gòu)建一個(gè)工作處理程序來從 URL 獲取參數(shù),例如: https: //min-api.cryptocompare.com/data/price ?fsym=BTC&tsyms=USDpackage mainimport ( "github.com/go-chi/chi" "net/http")type Crypto struct { Cur1 string Cur2 string Rate float64 Timestamp int64}func main() { port := ":3000" r := chi.NewRouter() r.Get("/", func(w http.ResponseWriter, r *http.Request) { w.Write([]byte("Connected")) }) http.ListenAndServe(port, r)我想我可以嘗試為處理程序主體上的第一個(gè)值創(chuàng)建 Cur1:cur1 = r.FormValue("cur1")同樣對(duì)于第二個(gè)值:Cur2 = r.FormValue("cur2") 最終請(qǐng)求將是:~/get_rates?cur1=eth&cur2=btc
如何從 HTTP 處理程序中的 URL 獲取參數(shù)
呼喚遠(yuǎn)方
2023-07-04 19:03:23