5
go
でこれを行う方法を理解できないようです。GETリクエストにパラメータを渡す
https://github.com/parnurzeal/gorequest
をし、私は悪いアイデアだと思うHeader
を、使用してパラメータを渡すことができます。私はこのチュートリアルを以下ました
。
package main
import(
"fmt"
"reflect"
"github.com/parnurzeal/gorequest"
)
func main() {
resp, body, errs := gorequest.New().
Get("http://localhost:8000/get_result").
Set("Number", "7"). // Changes the Header
Type("form"). // These two lines appear
Send(`{"number": 5}`). // to be irrelevant
End()
fmt.Println(errs)
fmt.Println(resp)
fmt.Println(body)
}
:私はこのコードを使用して、それを呼び出すようにしようとしています
package main
import (
"net/http"
"strconv"
"fmt"
)
func make_result(w http.ResponseWriter, r *http.Request) {
fmt.Println(r)
err := r.ParseForm()
if err != nil {
panic(err)
}
number_string := r.Form["number"][0]
// number_string := r.Header["Number"][0] header solution
number, err := strconv.Atoi(number_string)
if err != nil {
panic(err)
}
fmt.Fprint(w, fmt.Sprint(number * 5))
}
func main() {
http.HandleFunc("/get_result", make_result)
http.ListenAndServe("localhost:8000", nil)
}
:
私は基本的にpython
In [28]: import requests
In [29]: r = requests.get("http://localhost:8000/get_result", params={"number": 40})
のgo
バージョンを探しています後、私のREST APIのための私のコードです
上記はPythonのものに似ています:
In [34]: r = requests.get("http://localhost:8000/get_result", headers={"Number": 7})
私はAPIを呼び出す(paramsは使用)Pythonの方法を使用していた場合、私はrequest object
の一部として印刷される/get_result?number=7 <nil> <nil>
行を参照。しかし、私の行くバージョンでそれを見ていないので、私はそれを間違って呼び出す必要があります。私は何が欠けていますか?