Postman to cURL
Konvertiere Postman-Request-JSON-Exporte zu cURL-Befehlen.
Über dieses Tool
Postman ist eine der beliebtesten Plattformen zum Testen von APIs, mit der Entwickler HTTP-Anfragen einfach organisieren, dokumentieren und testen können. Allerdings ist es manchmal notwendig, diese Anfragen in cURL-Befehle umzuwandeln—sei es zum Teilen mit Teamkollegen, zum Ausführen in Skripten oder zum Einbetten in Dokumentationen. Dieses Tool wandelt Postman-JSON-Exporte sofort in ausführbare cURL-Befehle um und eliminiert die Notwendigkeit von manueller Umschreibung.
Um diesen Konverter zu verwenden, exportieren Sie Ihre Postman-Anfrage oder -Sammlung als JSON, fügen Sie das JSON in das Eingabefeld ein und klicken Sie auf "Konvertieren". Das Tool analysiert automatisch Header, Anfragetexte, Abfrageparameter und andere Einstellungen und gibt sofort einsatzbereite cURL-Befehle aus. Dies ist besonders nützlich für DevOps-Ingenieure, Backend-Entwickler und QA-Teams, die API-Anfragen schnell von Postman zur Befehlszeile oder zu CI/CD-Pipelines verschieben müssen.
Häufig gestellte Fragen
Code-Implementierung
import json
def postman_to_curl(postman_json: str, pretty: bool = False) -> str:
data = json.loads(postman_json)
# Handle collection format
if 'item' in data:
results = []
for item in data['item']:
req = item.get('request', {})
results.append(build_curl(req, pretty))
return '\n\n'.join(results)
# Handle single request
req = data.get('request', data)
return build_curl(req, pretty)
def build_curl(req: dict, pretty: bool) -> str:
method = req.get('method', 'GET').upper()
url_obj = req.get('url', {})
url = url_obj if isinstance(url_obj, str) else url_obj.get('raw', '')
parts = [f'curl -X {method}']
for header in req.get('header', []):
val = f"{header['key']}: {header['value']}"
parts.append(f'-H "{val}"')
body = req.get('body', {})
if body.get('mode') == 'raw' and body.get('raw'):
escaped = body['raw'].replace('"', '\\"')
parts.append(f'-d "{escaped}"')
parts.append(f'"{url}"')
sep = ' \\\n ' if pretty else ' '
return sep.join(parts)
# Example
collection = json.dumps({
"method": "POST",
"url": {"raw": "https://api.example.com/data"},
"header": [{"key": "Content-Type", "value": "application/json"}],
"body": {"mode": "raw", "raw": '{"key":"value"}'}
})
print(postman_to_curl(collection, pretty=True))
Comments & Feedback
Comments are powered by Giscus. Sign in with GitHub to leave a comment.