Ondersteunde opties voor cURL

cURL (Client voor URL’s) is een open-standaardbibliotheek van softwarefuncties waarmee de Invoegen vanuit URL scriptstap diverse veelgebruikte opties voor bestandsoverdrachten kan ondersteunen. In deze scriptstap gebruikt u Opties voor cURL opgeven om een berekening te maken die een of meer van de volgende cURL-opties bevat.

Opmerking  Plaats bij cURL-opties een backslash voor elk aanhalingsteken. Bijvoorbeeld: om een HTTP-header voor Content-type: application/json op te geven, is de tekstuitdrukking voor Opties voor cURL opgeven:

"--header \"Content-type: application/json\""

Alleen de hieronder vermelde opties worden door FileMaker-clients ondersteund. Voor meer informatie raadpleegt u de cURL-documentatie.

Optie1 Parameter2 Opmerkingen

--anyauth

 

 

--basic

 

 

--cert

-E

<$[$]fmvariable[:wachtwoord]>

Geef clientcertificaatbestand3 op dat moet worden gebruikt met HTTPS, FTPS of een ander protocol dat op SSL is gebaseerd. Voeg :[wachtwoord] toe om een wachtwoord op te geven voor het clientcertificaat.

Bij deze optie wordt ervan uitgegaan dat de privésleutel en het clientcertificaat zijn samengevoegd in het certificaatbestand. Gebruik--key en --pass om ze afzonderlijk op te geven.

--cert-type

<type>

Geef het type clientcertificaat op. PEM, DER en P12 zijn ondersteunde typen. Als u niets opgeeft, wordt PEM gebruikt.

--ciphers

<lijst met ciphers>

 

--connect-timeout

<seconden>

Geef een decimaal getal voor de seconden op.

--continue-at

-C

<offset>

Het gebruik van "-" voor de huidige bestandsgrootte wordt niet ondersteund. Gegevens vervangen binaire doelen en worden niet eraan toegevoegd.

--cookie

-b

<naam=gegevens[;n2=d2]> of <$[$]fmvariabele>

Zie opmerking 3 bij tabel.

--cookie-jar

-c

<$[$]fmvariabele>

Directe bestandstoegang en "-" worden door een FileMaker-variabele vervangen.

--crlf

 

 

--data

-d

<gegevens> of @<$[$]fmvariabele>

Zie opmerking 4 bij tabel.

--data-ascii

<gegevens> of @<$[$]fmvariabele>

Zie opmerking 4 bij tabel.

--data-binary

<gegevens> of @<$[$]fmvariabele>

Zie opmerking 4 bij tabel.

--data-raw

<gegevens>

 

--data-urlencode

<gegevens> of =<gegevens> of @<$[$]fmvariabele> of <naam>=<gegevens> of <naam>@<$[$]fmvariabele>

Zie opmerking 4 bij tabel.

--digest

 

 

--disable-eprt

 

 

--disable-epsv

 

 

--dump-header

-D

<$[$]fmvariabele>

Zie opmerking 3 bij tabel.

--expect100-timeout

<seconden>

Geef een decimaal getal voor de seconden op.

--fail

-f

 

 

--FM-return-container-variable

 

Wanneer 'Invoegen vanuit URL' het resultaat in een variabele gaat geven, gebruikt u deze optie om de verkregen gegevens geforceerd op te slaan als containergegevens.

--FM-text-encoding

<codering>

Converteert tekst in de opties die deze optie direct volgen van de interne tekencodering van FileMaker naar de niet-opgegeven codering. Gebruik een van de gedefinieerde namen voor de parameter codering van de TextEncode functie.

--form

-F

<naam=inhoud> of <naam=@$[$]fmvariabele>

Zie opmerking 4 bij tabel.

--form-string

<naam=inhoud>

 

--ftp-alternative-to-user

<opdracht>

 

--ftp-create-dirs

 

 

--ftp-method

multicwd, nocwd of singlecwd

Geef een van deze methoden op.

--ftp-pasv

 

 

--ftp-port

-P

<interface> of <IP-adres> of <hostnaam> of -

Voeg :[begin]-[einde] toe om een bereik van poorten op te geven.

--ftp-pret

 

 

--ftp-skip-pasv-ip

 

 

--ftp-ssl-ccc

 

Stelt ook --ftp-ssl-ccc-mode in op passive als dat nog niet is ingesteld.

--ftp-ssl-ccc-mode

active of passive

Geef een van deze modi op.

--ftp-ssl-control

 

 

--head

-I

 

 

--header

-H

<naam: waarde>

Gebruik deze optie eenmaal voor elke header die u opgeeft.

--ignore-content-length

 

 

--interface

<naam>

 

--ipv4

-4

 

 

--ipv6

-6

 

 

--junk-session-cookies

-j

 

 

--keepalive-time

<seconden>

Geef een geheel getal voor de seconden op.

--key-type

<type>

Geef op in wat voor type bestand de privésleutel is opgeslagen. DER en PEM zijn ondersteunde typen. Als u niets opgeeft, wordt PEM gebruikt.

--key

<$[$]fmvariabele>

Geef op in welk bestand de privésleutel is opgeslagen3. Gebruik deze optie als u uw privésleutel los van het certificaatbestand wilt opgeven.

--limit-rate

<snelheid[b|B|k|K|m|M|g|G]>

Geef een geheel getal gevolgd door een optionele eenheid op.

--list-only

-l

 

 

--local-port

<num>[-num]

Geef één poort of een bereik van poorten op.

--location

-L

 

 

--location-trusted

 

 

--mail-auth

<adres>

 

--mail-from

<adres>

 

--mail-rcpt

<adres>

 

--max-filesize

<bytes>

 

--max-time

-m

<seconden>

Geef een decimaal getal voor de seconden op.

--no-compressed

 

Er wordt standaard een gecomprimeerde reactie aangevraagd. Gebruik deze optie om ze uit te schakelen.

--no-keepalive

 

Standaard zijn keepalive-berichten ingeschakeld. Gebruik deze optie om ze uit te schakelen.

--noproxy

<host[,host]> of *

 

--output

-o

<bestandsnaam>

De bestandsnaam wordt alleen als een kenmerk van containergegevens gebruikt.

--pass

<wachtwoord>

Het wachtwoord voor de privésleutel. Gebruik deze optie als u het wachtwoord van uw privésleutel los van het certificaatbestand wilt opgeven.

--path-as-is

 

 

--post301

 

 

--post302

 

 

--post303

 

 

--proxy

-x

<[protocol://][gebruiker:wachtwoord@]proxyhost[:poort]>

 

--proxy-anyauth

 

 

--proxy-basic

 

 

--proxy-digest

 

 

--proxy-header

<naam: waarde>

Gebruik deze optie eenmaal voor elke header die u opgeeft.

--proxy-user

-U

<gebruiker:wachtwoord>

In tegenstelling tot de cURL-opdrachtregel wordt de gebruiker wordt niet om het wachtwoord gevraagd door FileMaker-clients als er geen wachtwoord bestaat.

--proxy1.0

<proxyhost[:poort]>

 

--proxytunnel

-p

 

 

--pubkey

<publickeyfile>

Geef het bestand met de openbare sleutel op dat moet worden gebruikt met het SFTP-protocol. Gebruik --key en --pass om onafhankelijk van elkaar de privésleutel en wachtwoordzin voor de privésleutel op te geven.

--quote

-Q

<opdracht>

Gebruik deze optie eenmaal voor elke opdracht voor de FTP-server.

--range

-r

<bereik>

 

--raw

 

 

--referer

-e

<URL>

Ondersteunt ;auto op het einde van de URL in combinatie met --location.

--request

-X

<opdracht>

 

--resolve

<host:poort:adres>

Gebruik deze optie eenmaal voor elke resolver die u opgeeft.

--show-error

-S

 

Raadpleeg Fouten verwerken.

--socks4

<host[:poort]>

 

--socks4a

<host[:poort]>

 

--socks5

<host[:poort]>

 

--socks5-hostname

<host[:poort]>

 

--speed-limit

-Y

<snelheid>

Geef een geheel getal voor bytes per seconde op.

--speed-time

-y

<tijd>

Geef een geheel getal voor de seconden op.

--ssl

 

--ftp-ssl wordt ook ondersteund.

--ssl-reqd

 

--ftp-ssl-reqd wordt ook ondersteund.

--time-cond

-z

<datumuitdrukking>

Ondersteunt alleen een datumuitdrukking in cURL-stijl.

--tr-encoding

 

 

--trace

<$[$]fmvariabele>

Zie opmerking 3 bij tabel.

--trace-ascii

<$[$]fmvariabele>

Zie opmerking 3 bij tabel.

--trace-time

 

 

--upload-file

-T

<$[$]fmvariabele>

Zie opmerking 3 bij tabel. Biedt geen ondersteuning voor globbing (het opgeven van bestandsnamen die overeenkomen met een patroon). Bij FTP en FTPS is de bestandsnaam na de upload naar de server identiek aan de bestandsnaam op het einde van de URL. Bij alle andere ondersteunde protocollen is de bestandsnaam identiek aan deze opgegeven in de containergegevens; een bestandsnaam in de URL wordt genegeerd.

--use-ascii

-B

 

 

--user

-u

<gebruiker:wachtwoord>

In tegenstelling tot de cURL-opdrachtregel wordt de gebruiker wordt niet om het wachtwoord gevraagd door FileMaker-clients als er geen wachtwoord bestaat.

--user-agent

-A

<tekenreeks agent>

 

--version

-V

 

Toont informatie over de versie van de cURL-bibliotheek (libcurl). De eerste regel bevat de volledige versie van libcurl en van andere gekoppelde bibliotheken van derden. De tweede regel (die begint met "Features:") vermeldt de ondersteunde libcurl-functies.

Opmerkingen bij tabel

  1. Voor bepaalde opties worden lange en korte vormen van de optienaam ondersteund (bijvoorbeeld ‑‑data en -d).

  2. Optionele onderdelen van parameters staan tussen vierkante haakjes [ ].

  3. Directe bestandstoegang wordt door een FileMaker-variabele vervangen.

  4. Directe bestandstoegang wordt door een FileMaker-variabele voorafgegaan door het @-teken vervangen.

Variabelen gebruiken

Hoewel u met geen enkele van de ondersteunde opties direct toegang hebt tot bestanden in het bestandssysteem of bestanden erin kunt maken, kunt u een FileMaker-variabele opgeven als de bron of het doel van de gegevens die de optie vereist. Om toegang te krijgen tot een bestand of om een bestand te maken, kunt u de variabele instellen op een containerveld.

Als u toegang tot een bestand wilt, stelt u de variabele in op een containerveld dat het bestand bevat en gebruikt u vervolgens die variabele als de parameter van de cURL-optie.

Als u een bestand wilt maken, gebruikt u een variabele als de parameter van de cURL-optie, stelt u een containerveld in op die variabele en exporteert u vervolgens het containerveld als een bestand.

Fouten verwerken

Niet-ondersteunde cURL-opties worden genegeerd.

Als u de optie --show-error gebruikt:

  • Wanneer fouten van de cURL-bibliotheek ervoor zorgen dat FileMaker-clients foutcode 1631 geven via de Get (LaatsteFout) functie om een onbekende verbindingsfout aan te geven, geeft de Get (LaatsteFoutGegevens) functie als resultaat dezelfde tekst die de cURL-opdrachtregel als resultaat geeft.

  • Wanneer een bewerking met succes wordt voltooid maar de server antwoordcode 400 of hoger met de gegevens geeft, geven FileMaker-clients de juiste foutcode als resultaat. Als er geen gepaste FileMaker-foutcode is, geeft Get (LaatsteFout) als resultaat 1631 en geeft Get (LaatsteFoutGegevens) als resultaat de antwoordcode in de vorm "Antwoordcode: nnn."

Als u de optie --show-error niet gebruikt, zorgt antwoordcode 401 van de server ervoor dat Get (LaatsteFout) FileMaker-foutcode 1627 als resultaat geeft ("Identiteit niet geaccepteerd"). Alle andere antwoordcodes geven als resultaat FileMaker-foutcode 0 ("Geen fout").

Voorbeeld

Verzendt HTTPS POST-gegevens als twee sleutel-waarde-paren, fname=Bob en lname=Smit, naar voorbeeld.com met de gebruikersgegevens mijngebruikersnaam en mijnwachtwoord en slaat de gevraagde gegevens in de variabele $$results op.

In de scriptstap ‘Invoegen vanuit URL’:

  • Stel Doel in op de variabele met de naam $$resultaten.

  • Stel URL opgeven in op https://voorbeeld.com/.

  • Stel Opties voor cURL opgeven in op een van de volgende equivalente reeksen opties:

    "--user mijngebruikersnaam:mijnwachtwoord --data fname=Bob&lname=Smit"
    "--user mijngebruikersnaam:mijnwachtwoord -d fname=Bob --data-ascii lname=Smit"
    "--user mijngebruikersnaam:mijnwachtwoord -d @$post_data"

    waarbij de variabele $post_data is ingesteld op sleutel-waarde-paren als tekst of ingesteld op een containerveld waarvan de inhoud een tekstbestand met sleutel-waarde-paren is.

In dit script ziet u hoe het bovenstaande voorbeeld sleutel-waarde-paren uit een bestand in het containerveld post_data verzendt.

Kopiëren
Variabele instellen [ $post_data ; tabel::post_data ]
Invoegen vanuit URL [ Met dialoogvenster: Uit ; Doel: $$results ; 
"https://voorbeeld.com/" ; SSL-certificaten verifiëren ; 
cURL-opties: "--user mijngebruikersnaam:mijnwachtwoord -d @$post_data" ]