周玉环 d906a41c2e first commit il y a 3 jours
..
.gitattributes d906a41c2e first commit il y a 3 jours
.gitignore d906a41c2e first commit il y a 3 jours
.releaserc.js d906a41c2e first commit il y a 3 jours
AUTHORS d906a41c2e first commit il y a 3 jours
COPYRIGHT d906a41c2e first commit il y a 3 jours
LICENSE-APACHE d906a41c2e first commit il y a 3 jours
LICENSE-MIT d906a41c2e first commit il y a 3 jours
Makefile d906a41c2e first commit il y a 3 jours
README.md d906a41c2e first commit il y a 3 jours
doc.go d906a41c2e first commit il y a 3 jours
http2curl.go d906a41c2e first commit il y a 3 jours
rules.mk d906a41c2e first commit il y a 3 jours

README.md

http2curl

:triangular_ruler: Convert Golang's http.Request to CURL command line

go.dev reference License GitHub release Docker Metrics Made by Manfred Touron

Go Release PR GolangCI codecov Go Report Card CodeFactor

To do the reverse operation, check out mholt/curl-to-go.

Example

import (
    "http"
    "moul.io/http2curl"
)

data := bytes.NewBufferString(`{"hello":"world","answer":42}`)
req, _ := http.NewRequest("PUT", "http://www.example.com/abc/def.ghi?jlk=mno&pqr=stu", data)
req.Header.Set("Content-Type", "application/json")

command, _ := http2curl.GetCurlCommand(req)
fmt.Println(command)
// Output: curl -X PUT -d "{\"hello\":\"world\",\"answer\":42}" -H "Content-Type: application/json" http://www.example.com/abc/def.ghi?jlk=mno&pqr=stu

Install

go get moul.io/http2curl

Usages

License

© 2019-2021 Manfred Touron

Licensed under the Apache License, Version 2.0 (LICENSE-APACHE) or the MIT license (LICENSE-MIT), at your option. See the COPYRIGHT file for more details.

SPDX-License-Identifier: (Apache-2.0 OR MIT)