Unterstützte cURL-Optionen
cURL (Client für URLs) ist eine Open-Standard-Bibliothek mit Software-Funktionen, die den Scriptschritt „Aus URL einfügen“ aktivieren, um viele übliche Optionen der Dateiübertragung zu unterstützen. Erstellen Sie in diesem Scriptschritt mithilfe von cURL-Optionen angeben eine Formel, die eine oder mehrere der folgenden cURL-Optionen enthält.
Hinweis Stellen Sie in cURL-Optionen jedem Anführungszeichen einen umgekehrten Schrägstrich voran. Um beispielsweise einen HTTP-Header für Content-type: application/json
anzugeben, lautet der Textausdruck für cURL-Optionen angeben:
"--header \"Content-type: application/json\""
Nur die nachfolgend aufgeführten Optionen werden durch FileMaker-Clients unterstützt. Weitere Informationen finden Sie in der cURL-Dokumentation.
Option1 | Parameter2 | Hinweise |
---|---|---|
|
|
|
|
|
|
|
| Geben Sie die Client-Zertifikatsdatei3 an, die mit HTTPS, FTPS oder einem anderen SSL-basierten Protokoll verwendet werden soll. Hängen Sie Diese Option setzt eine Zertifikatsdatei voraus, bei der der private Schlüssel und das Client-Zertifikat konkateniert sind. Verwenden Sie |
|
| Geben Sie den Typ des Client-Zertifikats an. |
|
|
|
|
| Geben Sie eine Dezimalzahl für Sekunden an. |
|
| Die Verwendung von „-“ für die aktuelle Dateigröße wird nicht unterstützt. Daten ersetzen binäre Ziele, sie werden nicht angehängt. |
|
| Siehe Tabellenhinweis 3. |
|
| Direkter Dateizugriff und „-“ werden durch eine FileMaker-Variable ersetzt. |
|
|
|
|
| Siehe Tabellenhinweis 4. |
|
| Siehe Tabellenhinweis 4. |
|
| Siehe Tabellenhinweis 4. |
|
|
|
|
| Siehe Tabellenhinweis 4. |
|
|
|
|
|
|
|
|
|
|
| Siehe Tabellenhinweis 3. |
|
| Geben Sie eine Dezimalzahl für Sekunden an. |
|
|
|
|
| Wenn „Aus URL einfügen“ auf eine Variable gesetzt ist, verwenden Sie diese Option, um zu erzwingen, dass zurückgegebene Daten als Containerdaten gespeichert werden. |
|
| Konvertiert Text in den Optionen, die unmittelbar auf diese Option folgen, von der FileMaker internen Zeichenkodierung in die angegebene Kodierung. Verwenden Sie einen der Namen, die für den Parameter |
|
| Siehe Tabellenhinweis 4. |
|
|
|
|
|
|
|
|
|
|
| Geben Sie eine dieser Methoden an. |
|
|
|
|
| Fügen Sie |
|
|
|
|
|
|
|
| Stellt auch |
|
| Geben Sie einen dieser Modi an. |
|
|
|
|
|
|
|
| Verwenden Sie diese Option für jeden Header, den Sie angeben. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| Geben Sie eine Ganzzahl für Sekunden an. |
|
| Geben Sie den Typ der privaten Schlüsseldatei an. |
|
| Geben Sie den Typ der privaten Schlüsseldatei3 an. Verwenden Sie diese Option, wenn Sie Ihren privaten Schlüssel getrennt von der Zertifikatsdatei zur Verfügung stellen müssen. |
|
| Geben Sie eine Ganzzahl gefolgt von einer optionalen Einheit ein. |
|
|
|
|
| Geben Sie einen Port oder einen Bereich von Ports an. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| Geben Sie eine Dezimalzahl für Sekunden an. |
|
| Standardmäßig wird eine komprimierte Antwort angefordert. Verwenden Sie diese Option, um sie zu deaktivieren. |
|
| Standardmäßig sind keepalive-Meldungen aktiviert. Verwenden Sie diese Option, um sie zu deaktivieren. |
|
|
|
|
| Der Dateiname wird nur als Attribut von Containerdaten verwendet. |
|
| Passphrase für den privaten Schlüssel. Verwenden Sie diese Option, wenn Sie die Passphrase Ihres privaten Schlüssels getrennt von der Zertifikatsdatei zur Verfügung stellen müssen. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| Verwenden Sie diese Option für jeden Header, den Sie angeben. |
|
| Wenn das Passwort nicht existiert, fordern FileMaker-Clients im Gegensatz zum curl-Befehlszeilenprogramm den Benutzer nicht zur Passworteingabe auf. |
|
|
|
|
|
|
|
| Geben Sie die Datei mit dem öffentlichen Schlüssel an, die mit dem SFTP-Protokoll verwendet werden soll. Verwenden Sie |
|
| Verwenden Sie diese Option einmal für jeden Befehl an den FTP-Server. |
|
|
|
|
|
|
|
| Unterstützt |
|
|
|
|
| Verwenden Sie diese Option für jeden Resolver, den Sie angeben. |
|
| Weitere Informationen finden Sie unter Fehlerbehandlung. |
|
|
|
|
|
|
|
|
|
|
|
|
|
| Geben Sie eine Ganzzahl an Bytes pro Sekunde an. |
|
| Geben Sie eine Ganzzahl für Sekunden an. |
|
|
|
|
|
|
|
| Unterstützt nur die Angabe eines Datumsausdrucks im cURL-Stil. |
|
|
|
|
| Siehe Tabellenhinweis 3. |
|
| Siehe Tabellenhinweis 3. |
|
|
|
|
| Siehe Tabellenhinweis 3. Unterstützt kein Globbing (Angabe von Dateinamen, die einem Muster entsprechen). Für FTP und FTPS ist der Dateiname nach dem Hochladen auf den Server identisch mit dem Dateinamen, der am Ende der URL angegeben wurde. Bei allen anderen unterstützten Protokollen ist der Dateiname identisch mit den in den Containerdaten angegebenen Namen. Dateinamen in der URL werden ignoriert. |
|
|
|
|
| Wenn das Passwort nicht existiert, fordern FileMaker-Clients im Gegensatz zum curl-Befehlszeilenprogramm den Benutzer nicht zur Passworteingabe auf. |
|
|
|
|
| Zeigt Informationen über die Version der cURL-Bibliothek (libcurl) an. Die erste Zeile zeigt die Vollversion von libcurl und andere verlinkte Bibliotheken von Drittanbietern. Die zweite Zeile (beginnend mit „Features:“) listet die unterstützten libcurl-Funktionen auf. |
Tabellenhinweise
-
Für einige Optionen werden Lang- und Kurzform des Optionsnamens unterstützt (z. B.
‑‑data
und-d
). -
Optionale Teile von Parametern befinden sich in eckigen Klammern [ ].
-
Direkter Dateizugriff wird durch eine FileMaker-Variable ersetzt.
-
Direkter Dateizugriff wird durch eine FileMaker-Variable mit dem vorangestellten @ ersetzt.
Verwenden von Variablen
Obwohl Ihnen die unterstützten Optionen direkten Zugriff auf Dateien oder das Erstellen von Dateien im Dateisystem erlauben, können Sie eine FileMaker-Variable als Quelle oder Ziel der Daten angeben, die die Option verlangt. Um auf eine Datei zuzugreifen bzw. eine Datei zu erstellen, können Sie die Variable auf ein Containerfeld setzen.
Um auf eine Datei zuzugreifen, können Sie die Variable auf ein Containerfeld setzen, das die Datei enthält, und dann diese Variable als Parameter der cURL-Option verwenden.
Um eine Datei zu erstellen, können Sie eine Variable als Parameter der cURL-Option verwenden, ein Containerfeld auf diese Variable setzen und dann das Containerfeld als Datei exportieren.
Fehlerbehandlung
Nicht unterstützte cURL-Optionen werden ignoriert.
Bei Verwendung der Option --show-error
:
-
Wenn von der cURL-Bibliothek zurückgegebene Fehler verursachen, dass FileMaker-Clients den Fehlercode 1631 über die Funktion „Hole ( LetzteFehlerNr )“ zurückgeben, um einen unspezifizierten Verbindungsfehler zu melden, gibt die Funktion „Hole ( LetzteFehlerNrDetail )“ denselben Text wie das Befehlszeilenprogramm curl zurück.
-
Wenn ein Vorgang erfolgreich ist, der Server aber Antwortcode 400 oder höher mit den Daten liefert, geben FileMaker-Clients einen entsprechenden Fehlercode zurück. Ist kein entsprechender FileMaker-Fehlercode vorhanden, gibt „Hole ( LetzteFehlerNr )“ 1631 zurück und „Hole ( LetzteFehlerNrDetail )“ den Antwortcode in der Form „Antwortcode: nnn.“
Wenn Sie die Option --show-error
nicht verwenden, veranlasst der Server-Antwortcode von 401, dass „Hole ( LetzteFehlerNr )“ den FileMaker-Fehlercode 1627 („Authentifizierung fehlgeschlagen“) zurückgibt. Alle anderen Antwortcodes geben FileMaker-Fehlercode 0 („Kein Fehler“) zurück.
Beispiel:
Sendet HTTPS POST-Daten als zwei Schlüssel-Wert-Paare, vname=Robert
und nname=Schmidt
an beispiel.de mit den Anmeldedaten meinBenutzername
und meinPasswort
und speichert die verlangten Daten in der Variablen $$Ergebnis.
Im Scriptschritt „Aus URL einfügen“:
-
Stellen Sie Ziel auf die Variable
$$Ergebnis
ein. -
Stellen Sie URL angeben auf
https://beispiel.de/
ein. -
Stellen Sie cURL-Optionen angeben auf eines der folgenden entsprechenden Optionensets ein:
"--user meinBenutzername:meinPasswort --data vname=Robert&nname=Schmidt"
"--user meinBenutzername:meinPasswort -d vname=Robert --data-ascii nname=Schmidt"
"--user meinBenutzername:meinPasswort -d @$post_daten"
Dabei ist die Variable
$post_daten
entweder auf Schlüssel-Wert-Paare als Text eingestellt oder auf ein Containerfeld, dessen Inhalt eine Textdatei ist, die Schlüssel-Wert-Paare enthält.
Das Script zeigt das obige Beispiel, das Schlüssel-Wert-Paare aus einer Datei im Containerfeld post_daten
sendet.
Variable setzen [ $post_daten ; Tabelle::post_daten ]
Aus URL einfügen [ Mit Dialog: Aus ; Ziel: $$Ergebnisse ;
"https://beispiel.de/" ; SSL-Zertifikate verifizieren ;
cURL-Optionen: "--user meinBenutzername:meinPasswort -d @$post_daten" ]