---
title: "So senden Sie HTTP-Header mit cURL"
slug: http-headers-with-curl
date: 2026-02-22T07:24:27+00:00
modified: 2026-02-22T07:24:29+00:00
permalink: https://brightdata.de/blog/wie/http-headers-with-curl
type: blog
---

[ Blog ](https://brightdata.de/blog "Blog") / [How Tos](https://brightdata.de/blog/wie)







 [How Tos](https://brightdata.de/blog/wie)

# So senden Sie HTTP-Header mit cURL

Entdecken Sie die Leistungsfähigkeit von HTTP-Headern beim Web-Scraping und lernen Sie, wie Sie mit curl benutzerdefinierte Header effizient senden können, um die Datenerfassung und Serverinteraktion zu verbessern.

 8 min lesen





 [ ![Bright Data favicon](https://media.brightdata.de/2021/05/favicon.svg) ](https://brightdata.com/blog/authors/ndafara-tsamba)

 [Ndafara Tsamba

 ](https://brightdata.com/blog/authors/ndafara-tsamba)





 ![How to Send HTTP Headers with cURL main blog image](https://media.brightdata.de/2024/04/How-to-Send-HTTP-Headers-with-cURL.svg)





Das Hypertext Transfer Protocol (HTTP) ist ein [zustandsloses Protokoll](https://byjus.com/gate/difference-between-stateless-and-stateful-protocol/), das dem Client-Server-Modell folgt, bei dem ein Client eine Anfrage stellt und dann auf eine Antwort vom Server wartet. Die Anfrage enthält Details wie die HTTP-Methode, den Serverstandort, den Pfad, die Abfragezeichenfolge und die Header.

HTTP-Header sind Felder oder Listen von Zeichenfolgen als Schlüssel-Wert-Paare, die die Übertragung von Metadaten und Anweisungen erleichtern. Sie sind maßgeblich an der Definition von Parametern wie Inhaltstyp, Caching-Verhalten und Authentifizierung beteiligt und gewährleisten eine effiziente und sichere Interaktion zwischen Clients und Servern. Beim [Web-Scraping](/blog/how-tos/what-is-web-scraping) ermöglichen HTTP-Header die Anpassung von Anfragen, sodass Web-Scraper User Agents imitieren, die Inhaltsaushandlung steuern und die Authentifizierung gemäß den Richtlinien und Protokollen der Website durchführen können.

Zu den gängigen Anwendungsfällen von HTTP-Headern beim Web-Scraping gehören das Ändern des User-Agents (UA) oder des Antworttyps, das Ausführen bedingter Anfragen und die Authentifizierung bei Anwendungsprogrammierschnittstellen (APIs).

In diesem Artikel erfahren Sie, wie Sie HTTP-Header mit[curl](/faqs/curl/what-is-curl) senden können.

## Senden von HTTP-Headern mit cURL

Bevor Sie mit diesem Tutorial beginnen, überprüfen Sie, ob curl auf Ihrem Betriebssystem installiert ist, indem Sie den folgenden Befehl in Ihrem Terminal ausführen:

```none
curl --version

```

Wenn es installiert ist, wird in der Ausgabe eine Versionsnummer angezeigt, wie zum Beispiel:

```none
curl 7.55.1 (Windows) libcurl/7.55.1 WinSSL
Release-Date: [unreleased]
Protocols: dict file ftp ftps http https imap imaps pop3 pop3s smtp smtps telnet tftp
Features: AsynchDNS IPv6 Largefile SSPI Kerberos SPNEGO NTLM SSL

```

Wenn Sie eine Fehlermeldung erhalten, z. B.`„curl wird nicht als interner oder externer Befehl, als ausführbares Programm oder als Batch-Datei erkannt`“ oder`„Befehl nicht gefunden“`, müssen Sie[curl installieren](https://curl.se/download.html).

Außerdem benötigen Sie ein Tool zum Überprüfen von Headern, z. B.[httpbin.org](http://httpbin.org/), einen einfachen HTTP-Anfrage- und Antwortdienst.

Wenn Sie bereits mit curl gearbeitet haben, wissen Sie, dass die curl-Syntax wie folgt aussieht:

```none
curl [Optionen] [URL]

```

Das bedeutet, wenn Sie eine Webseite von `mywebpage.com` herunterladen möchten, müssen Sie den folgenden Befehl ausführen:

```none
curl www.mywebpage.com

```

## cURL-Header

Um die von curl gesendeten Header mit httpbin.org anzuzeigen, öffnen Sie Ihre Befehlszeile und führen Sie Folgendes aus:

```none
curl http://httpbin.org/headers

```

Die Ausgabe sollte eine Liste der Header enthalten:

```none
{
  "headers": {
    "Accept": "*/*",
    "Host": "httpbin.org",
    "User-Agent": "curl/7.55.1",
    "X-Amzn-Trace-Id": "Root=1-65fd2eb0-0617353714d52f3777c9c267"
  }

```

Die Header `„Accept“`, `„Host“` und `„User-Agent“` werden standardmäßig mit curl gesendet.

Der `Accept-Header` teilt dem Server mit, welche Medientypen der Client akzeptieren kann. Er teilt dem Server die Inhaltstypen mit, die der Client akzeptieren möchte, und ermöglicht so die Inhaltsaushandlung zwischen Client und Server.

Ein `Accept` -Header, der angibt, dass der Client JSON bevorzugt, sieht wie folgt aus:

```none
Accept: application/json

```

Das Feld `„User-Agent“` enthält Ihre Client-Details, in diesem Fall die curl-Anwendung mit der Version 7.55.1 (diese Versionsnummer entspricht Ihrer Version).

Der `Host-Header` identifiziert eindeutig die Webdomain (*d. h.* den Host) und den Port, an den die HTTP-Anfrage gesendet wird. Wenn in der Anfrage kein Port angegeben ist, werden die Standardwerte angenommen (*d. h.* Port 80 für HTTP und Port 443 für HTTPS).

`X-Amzn-Trace-Id` ist der einzige Header in der Ausgabe, der kein Standardheader ist. Dieser Header zeigt an, dass Ihre Anfrage an einen Amazon Web Services (AWS)-Dienst, z. B. einen AWS-Load Balancer, gesendet wurde, und kann zur Verfolgung von HTTP-Anfragen verwendet werden.

Um zu überprüfen, ob diese Header standardmäßig von curl gesendet wurden, können Sie den `Verbose-Modus` verwenden. Das Flag hierfür lautet entweder `-v` oder `--verbose` und zeigt detaillierte Informationen zur Anfrage und Antwort an, einschließlich der Header.

Führen Sie den folgenden Befehl aus, um die von curl gesendeten Standard-Header anzuzeigen:

```none
curl -v http://httpbin.org/headers

```

Ihre Ausgabe sollte wie folgt aussehen:

```none
* Trying 50.16.63.240...
* TCP_NODELAY set
* Connected to httpbin.org (50.16.63.240) port 80 (#0)
> GET /headers HTTP/1.1
> Host: httpbin.org
> User-Agent: curl/7.55.1
> Accept: */*
>
< HTTP/1.1 200 OK
< Date: Fri, 22 Mar 2024 07:18:00 GMT
< Content-Type: application/json
< Content-Length: 173
< Connection: keep-alive
< Server: gunicorn/19.9.0
< Access-Control-Allow-Origin: *
< Access-Control-Allow-Credentials: true
<
{
  "headers": {
    "Accept": "*/*",
    "Host": "httpbin.org",
    "User-Agent": "curl/7.55.1",
    "X-Amzn-Trace-Id": "Root=1-65fd30a8-624365ad52781957578cd5b1"
  }
}
* Verbindung #0 zum Host httpbin.org bleibt intakt

```

Die Zeilen mit einem Größer-als-Zeichen (&gt;) zeigen, was Ihr Client (curl) an den Endpunkt gesendet hat. Diese Ausgabe bestätigt, dass die folgenden Header gesendet wurden:

- `GET`(HTTP-Methode) an den Endpunkt/Header
- `Host`mit dem Wert`httpbin.org`
- `User-Agent`mit dem Wert`curl/7.55.1`
- `Accept`mit dem Wert`*/*`

In der Ausgabe spiegeln die Zeilen mit einem Kleiner-Zeichen, wie z. B. `< Content-Type: application/json`, die von Ihnen gesendeten Header wider.

## <a></a>Ändern der Standard-Header mit dem Flag -H

Das Flag `-H` oder `--header` wird verwendet, um benutzerdefinierte Header an den Server zu übergeben, und kann auch zum Testen verwendet werden.

Um beispielsweise den `User-Agent` von `curl/7.55.1` in `Your-New-User-Agent` zu ändern, verwenden Sie den folgenden Befehl:

```none
curl -H "User-Agent: Your-New-User-Agent" http://httpbin.org/headers

```

Ihre Ausgabe sieht wie folgt aus:

```none
{
  "headers": {
    "Accept": "*/*",
    "Host": "httpbin.org",
    "User-Agent": "Your-New-User-Agent",
    "X-Amzn-Trace-Id": "Root=1-65fd5123-3ebe566a4681427c6996c72c"
  }
}

```

Wenn Sie den `Accept-Header` von `*/*`, der alle Arten von Inhalten akzeptiert, in `application/json` ändern möchten, der nur Inhalte im JSON-Format akzeptiert, verwenden Sie den folgenden Befehl:

```none
curl --header "Accept: application/json" http://httpbin.org/headers

```

Ihre Ausgabe sieht wie folgt aus:

```none
{
  "headers": {
    "Accept": "application/json",
    "Host": "httpbin.org",
    "User-Agent": "curl/7.55.1",
    "X-Amzn-Trace-Id": "Root=1-65fd55c3-05c21f81770c1c5e6343b1fc"
  }
}

```

> **Hinweis:** Im zweiten Beispiel wurde `--header` anstelle von `-H` verwendet. `--header` und `-H` sind austauschbar und haben dieselbe Funktion.

Seit Curl Version 7.55.0 können Sie auch eine Datei mit Ihren Headern übergeben. Wenn die Datei mit Ihren Headern beispielsweise den Namen `header_file` hat, können Sie den folgenden Befehl verwenden, um eine Datei mit Ihren Headern zu übergeben:

```none
Curl -H @header_file

```

## <a></a>Benutzerdefinierte Header senden

Benutzerdefinierte Header werden von Entwicklern definiert und enthalten zusätzliche Informationen zu HTTP-Anfragen, die über die von Standard-Headern bereitgestellten Informationen hinausgehen.

Um einen benutzerdefinierten Header mit curl zu senden, können Sie das Flag `-H` verwenden. Wenn Sie beispielsweise einen benutzerdefinierten Header namens `My-Custom-Header` mit dem Wert `value` senden möchten, führen Sie den folgenden Befehl aus:

```none
curl -H "My-Custom-Header: Value of custom header" http://httpbin.org/headers

```

Ihre Ausgabe sieht wie folgt aus:

```none
{
  "headers": {
    "Accept": "*/*",
    "Host": "httpbin.org",
    "My-Custom-Header": "Value of custom header",
    "User-Agent": "curl/7.55.1",
    "X-Amzn-Trace-Id": "Root=1-65fd7d2a-3b683be160ff2965023b3a31"
  }
}

```

## <a></a>Leere Header senden

Es gibt Szenarien, in denen das Senden leerer Header erforderlich ist, z. B. zur Einhaltung bestimmter API-Anforderungen, die bestimmte Header vorschreiben, auch wenn diese keinen Inhalt haben. Der[HTTP Strict Transport Security (HSTS)-Header](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Strict-Transport-Security)wird beispielsweise verwendet, um sichere HTTPS-Verbindungen auf Websites zu erzwingen. Während dieser Header normalerweise Anweisungen zur Dauer und zum Verhalten von HSTS enthält, gewährleistet das Senden mit einem leeren Wert die sofortige Durchsetzung von HSTS.

Sie können leere Header auch zum Löschen oder Zurücksetzen von Headern verwenden. Wenn Sie beispielsweise einen zuvor standardmäßig festgelegten Header zurücksetzen oder löschen möchten, können Sie durch das Senden eines leeren Headers den Wert des Headers löschen.

Um einen leeren Header mit curl zu senden, müssen Sie den Headernamen gefolgt von einem Semikolon angeben, um einen leeren Wert anzugeben. Der folgende Befehl zeigt Ihnen, wie Sie einen leeren benutzerdefinierten Header namens `„My-Custom-Header”` senden können:

```none
curl -H "My-Custom-Header;" http://httpbin.org/headers

```

Die Ausgabe zeigt `„My-Custom-Header”` mit einem leeren Wert:

```none
{
  "headers": {
    "Accept": "*/*",
    "Host": "httpbin.org",
    "My-Custom-Header": "",
    "User-Agent": "curl/7.55.1",
    "X-Amzn-Trace-Id": "Root=1-65fd84e2-7a42d9d62a42741e448c426f"
  }
}

```

## <a></a>Header entfernen

Um einen Header mit curl zu entfernen, müssen Sie den Namen des Headers gefolgt von einem Doppelpunkt ohne Wert angeben.

Um beispielsweise den Standard-Header `„User-Agent“` zu entfernen, senden Sie den folgenden Befehl:

```none
curl -H „User-Agent:” http://httpbin.org/headers

```

Die Antwort enthält den `User-Agent-` Header nicht, was bestätigt, dass der Header entfernt wurde:

```none
{
  "headers": {
    "Accept": "*/*",
    "Host": "httpbin.org",
    "X-Amzn-Trace-Id": "Root=1-65fd862d-13b181583501ae11046374a1"
  }
}

```

## <a></a>Mehrere Header senden

Bisher haben Sie Beispiele gesehen, die nur einen Header enthalten, aber es ist möglich, mit curl mehr als einen Header zu senden. Dazu müssen Sie lediglich das Flag `-H` mehrmals einfügen.

Wenn Sie beispielsweise zwei Header (`Custom-Header-1` und `Custom-Header-2`) mit den Werten `eins` und `zwei` senden möchten, führen Sie den folgenden Befehl aus:

```none
curl -H "Custom-Header-1: one" -H "Custom-Header-2: two" http://httpbin.org/headers

```

Ihre Ausgabe sieht dann wie folgt aus:

```none
{
  "headers": {
    "Accept": "*/*",
    "Custom-Header-1": "one",
    "Custom-Header-2": "two",
    "Host": "httpbin.org",
    "User-Agent": "curl/7.55.1",
    "X-Amzn-Trace-Id": "Root=1-65fd8781-143be3502c559bc5605fc6f1"
  }
}

```

## <a></a>Fazit

In diesem Artikel haben Sie etwas über HTTP-Header gelernt und erfahren, wie Sie HTTP-Header mit curl senden können.

Wenn Sie auf der Suche nach einer umfassenden Web-Scraping-Lösung sind, probieren Sie[Bright Data](/) aus. Es bietet Tools und Dienste wie[Proxy-Dienste](/proxy-types), die Anonymität gewährleisten und IP-Blockierungen verhindern, sowie[Web Unlocker](/products/web-unlocker), mit dem Sie [ohne CAPTCHAs](/products/web-unlocker/captcha-solver) auf geografisch eingeschränkte Inhalte zugreifen können.

Starten Sie noch heute die Gratis-Testversion!



Vertrieb kontaktierenGratis testen![google social icon](/wp-content/themes/brightdata/assets/images/ic_google.svg)









 Inhaltsverzeichnis







Dedicated Scraper APIs &amp; No-Code Scrapers

Over 1000 scrapers for all popular domains. Simplify your web scraping.

[See pricing](/pricing/web-scraper "See pricing")

Just want data? Skip scraping.

Hundreds of ready-to-use datasets from all popular domains.

[See pricing](/pricing/datasets "See pricing")







 [ ](https://news.ycombinator.com/submitlink?t=So+senden+Sie+HTTP-Header+mit+cURL&u=https://brightdata.de/blog/wie/http-headers-with-curl) [ ](https://www.linkedin.com/shareArticle?mini=true&title=So+senden+Sie+HTTP-Header+mit+cURL&url=https://brightdata.de/blog/wie/http-headers-with-curl) [ ](http://www.reddit.com/submit?title=So+senden+Sie+HTTP-Header+mit+cURL&url=https://brightdata.de/blog/wie/http-headers-with-curl)







##  Das könnte Sie auch interessieren

 [ ![curl post request guide](https://media.brightdata.de/2023/12/curl-GET-Request-Guide-1.svg) ](https://brightdata.de/blog/wie/curl-post-request-guide "curl POST-Anforderungen – Leitfaden")

 [How Tos



 ![White number one with a flame on top.](https://media.brightdata.de/2023/03/Favicon-2-1-50x50.png)

Ivan Kahl





### curl POST-Anforderungen – Leitfaden

Erfahren Sie mehr über cURL POST-Anforderungen – was eine derartige Anforderung ist, wie man eine POST-Anforderung mit cURL übermittelt und vieles mehr.



 06-Dec-2023

 12 min lesen

 ](https://brightdata.de/blog/wie/curl-post-request-guide)

 [ ![Guide to using cURL with Python](https://media.brightdata.de/2023/04/Guide-to-Using-cURL-with-Python.svg) ](https://brightdata.de/blog/wie/curl-with-python "Anleitung zur Verwendung von cURL mit Python")

 [How Tos



 ![](https://media.brightdata.de/2023/04/Roel-Peters-50x50.png)

Roel Peters





### Anleitung zur Verwendung von cURL mit Python

In diesem Artikel erfahren Sie, wie Python und cURL zusammen verwendet werden können, um GET-, POST- und PUT-Anfragen zu automatisieren und um Dateien und Websites herunterzuladen.



 13-Apr-2023

 13 min lesen

 ](https://brightdata.de/blog/wie/curl-with-python)

 [ ![](https://media.brightdata.de/2022/11/How-to-Scrape-with-Python.svg) ](https://brightdata.de/blog/wie/web-scraping-with-python "Web Scraping mit Python – Schritt-für-Schritt-Anleitung")

 [How Tos



 ![Antonello Zanini](https://media.brightdata.de/2022/12/Antonello-Zanini-2-50x50.jpg)

Antonello Zanini

Technical Writer





### Web Scraping mit Python – Schritt-für-Schritt-Anleitung

Lernen Sie, Web Scraping mit Python durchzuführen, um schnell Daten von mehreren Websites zu sammeln und so Zeit und Mühe zu sparen.



 29-Nov-2022

 21 min lesen

 ](https://brightdata.de/blog/wie/web-scraping-with-python)
