Wenn ich mich nicht irre, wird es (zur Zeit) nicht unterstützt Postparameter zu übergeben.
Ich dachte, dass aus dem Code von go-wrk durch das Folgen des -m = "POST" -Parameters, der anders suggeriert. (Mit der Methode "POST" natürlich nicht, dass Sie auch Parameter übergeben bedeutet können)
Der Parameter in main.go analysiert wird: 19:
method = flag.String("m", "GET", "the http request method")
dann in single_node.go an Kunden weitergegeben: 16:
go StartClient(
toCall,
*headers,
*method,
*disableKeepAlives,
responseChannel,
wg,
*totalCalls,
)
, wo es in der dritten Platz in "Meth" Variable empfangen wird (client.go: 14):
func StartClient(url_, heads, meth string, dka bool, responseChan chan *Response, waitGroup *sync.WaitGroup, tc int) {
(: 55
client.go):
und dann hier verwendet
req, _ := http.NewRequest(meth, url_, nil)
sets := strings.Split(heads, "\n")
//Split incoming header string by \n and build header pairs
for i := range sets {
split := strings.SplitN(sets[i], ":", 2)
if len(split) == 2 {
req.Header.Set(split[0], split[1])
}
}
timer := NewTimer()
for {
timer.Reset()
resp, err := tr.RoundTrip(req)
respObj := &Response{}
(...)
responseChan <- respObj
}
Wenn Post Parameter befahrbar sein würde, würden sie irgendwo in der Anfrage werden müssen setzen, wie Sie auf der golang http package Website Nachschlag kann:
func NewRequest(method, urlStr string, body io.Reader) (*Request, error)
NewRequest gibt eine neue Anfrage mit einer Methode, einer URL und einem optionalen Text zurück.
Von dem Link, den Sie gepostet: -m = "GET": die HTTP-Anfrage-Methode – TehSphinX
Ich würde vermuten, dass Sie einfach schreiben -m = "POST" statt. – TehSphinX
@TehSphinX -m = "POST" gibt nur die Methode an. Wie sende ich Parameter? – Kumaran