cURL-alternativ som stöds

cURL (Client for URLs) är ett öppet standardbibliotek med programfunktioner som gör att Scriptsteget Infoga från URL har stöd för många vanliga alternativ för filöverföring. I detta scriptsteg använder du Ange cURL-tillval för att skapa en beräkning som inkluderar ett eller fler av följande cURL-alternativ.

Bara de alternativ som listas nedan stöds av FileMaker-klienter. Mer information finns i dokumentationen för cURL.

 

Tillval1

Parameter2

Kommentarer

--anyauth

 

 

--basic

 

 

--ciphers

<lista med chiffer>

 

--connect-timeout

<sekunder>

Ange antal sekunder med decimaler.

--continue-at
-C

<offset>

Det går inte att använda "-" för aktuell filstorlek. Data lägger inte till utan ersätter binära mål.

--cookie
-b

<namn=data[;n2=d2]> eller <$[$]fmvariabel>

Se tabellanmärkning 3.

--cookie-jar
-c

<$[$]fmvariabel>

Direkt filåtkomst och "-" ersätts med en FileMaker-variabel.

--crlf

 

 

--data
-d

<data> eller @<$[$]fmvariabel>

Se tabellanmärkning 4.

--data-ascii

<data> eller @<$[$]fmvariabel>

Se tabellanmärkning 4.

--data-binary

<data> eller @<$[$]fmvariabel>

Se tabellanmärkning 4.

--data-raw

<data>

 

--data-urlencode

<data> eller =<data> eller @<$[$]fmvariabel> eller <namn>=<data> eller <namn>@<$[$]fmvariabel>

Se tabellanmärkning 4.

--digest

 

 

--disable-eprt

 

 

--disable-epsv

 

 

--dump-header
-D

<$[$]fmvariabel>

Se tabellanmärkning 3.

--expect100-timeout

<sekunder>

Ange antal sekunder med decimaler.

--fail
-f

 

 

--FM-return-container-variable

 

När Infoga från URL har en variabel som mål använder du det här alternativet för att returnerat data ska sparas som containerdata.

--FM-text-encoding

<kodning>

Konverterar texten i de alternativ som följer direkt efter detta alternativ från FileMakers interna teckenkodning till den angivna kodningen. Använd ett av namnen som definierats för parametern encoding för Funktionen TextEncode.

--form
-F

<namn=innehåll> eller <namn=@$[$]fmvariabel>

Se tabellanmärkning 4.

--form-string

<namn=innehåll>

 

--ftp-alternative-to-user

<kommando>

 

--ftp-create-dirs

 

 

--ftp-method

multicwd, nocwd eller singlecwd

Ange en av dessa metoder.

--ftp-pasv

 

 

--ftp-port
-P

<gränssnitt> eller <IP-adress> eller <värdnamn> eller -

Lägg till :[start]-[slut] för att ange ett portintervall.

--ftp-pret

 

 

--ftp-skip-pasv-ip

 

 

--ftp-ssl-ccc

 

Ställer även in --ftp-ssl-ccc-mode till passive, om det inte redan är inställt.

--ftp-ssl-ccc-mode

active eller passive

Ange ett av dessa lägen.

--ftp-ssl-control

 

 

--head
-I

 

 

--header
-H

<namn: värde>

Ange detta alternativ en gång för varje header du anger.

--ignore-content-length

 

 

--interface

<namn>

 

--ipv4
-4

 

 

--ipv6
-6

 

 

--junk-session-cookies
-j

 

 

--keepalive-time

<sekunder>

Ange antal sekunder med heltal.

--limit-rate

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

Ange ett heltal följt av en valfri enhet.

--list-only
-l

 

 

--local-port

<num>[-num]

Ange en port eller ett portintervall.

--location
-L

 

 

--location-trusted

 

 

--mail-auth

<adress>

 

--mail-from

<adress>

 

--mail-rcpt

<adress>

 

--max-filesize

<byte>

 

--max-time
-m

<sekunder>

Ange antal sekunder med decimaler.

--no-compressed

 

Som standard begärs ett komprimerat svar. Använd detta alternativ för att inaktivera dem.

--no-keepalive

 

Som standard är keepalive-meddelanden aktiverade. Använd detta alternativ för att inaktivera dem.

--noproxy

<värd[,värd> eller *

 

--output
-o

<filnamn>

Filnamnet används bara som ett attribut för containerdata.

--path-as-is

 

 

--post301

 

 

--post302

 

 

--post303

 

 

--proxy
-x

<[protokoll://][användare:lösenord@]proxyvärd[:port]>

 

--proxy-anyauth

 

 

--proxy-basic

 

 

--proxy-digest

 

 

--proxy-header

<namn: värde>

Ange detta alternativ en gång för varje header du anger.

--proxy-user
-U

<användare:lösenord>

Till skillnad från kommandoradverktyget curl så frågar FileMaker-klienter inte om lösenord om det inte finns.

--proxy1.0

<proxyvärd[:port]>

 

--proxytunnel
-p

 

 

--quote
-Q

<kommando>

Använd detta kommando en gång för varje kommando till FTP-servern.

--range
-r

<intervall>

 

--raw

 

 

--referer
-e

<URL>

Har stöd för ;auto i slutet av URL vid användning med --location.

--request
-X

<kommando>

 

--resolve

<värd:port:adress>

Ange detta alternativ en gång för varje matchare du anger.

--show-error
-S

 

Mer information finns i Hantera fel.

--socks4

<värd[:port]>

 

--socks4a

<värd[:port]>

 

--socks5

<värd[:port]>

 

--socks5-hostname

<värd[:port]>

 

--speed-limit
-Y

<hastighet>

Ange antal byte per sekund med heltal.

--speed-time
-y

<tid>

Ange antal sekunder med heltal.

--ssl

 

--ftp-ssl stöds också.

--ssl-reqd

 

--ftp-ssl-reqd stöds också.

--time-cond
-z

<datumuttryck>

Har bara stöd för datumuttryck i cURL-format.

--tr-encoding

 

 

--trace

<$[$]fmvariabel>

Se tabellanmärkning 3.

--trace-ascii

<$[$]fmvariabel>

Se tabellanmärkning 3.

--trace-time

 

 

--upload-file
-T

<$[$]fmvariabel>

Se tabellanmärkning 3. Har inte stöd för jokertecken (filnamn som matchar ett mönster). För FTP och FTPS är filnamnet efter överföring samma som det som angavs i slutet på URL-adressen. För alla andra protokoll som stöds är filnamnet samma som det som anges i containerdata; filnamn i URL-adressen ignoreras.

--use-ascii
-B

 

 

--user
-u

<användare:lösenord>

Till skillnad från kommandoradverktyget curl så frågar FileMaker-klienter inte om lösenord om det inte finns.

--user-agent
-A

<agent-sträng>

 

Tabellanmärkningar

1. För vissa alternativ stöds både långa och korta versioner av alternativets namn (exempelvis ‑‑data och -d).

2. Valfria delar av parametrar visas inom [ ].

3. Direkt filåtkomst ersätts med en FileMaker-variabel.

4. Direkt filåtkomst ersätts med en FileMaker-variabel med prefixet @.

Använda variabler

Även om inga av de alternativ som stöds tillåter direkt åtkomst till filer eller att skapa filer i filsystemet, kan du ange en FileMaker-variabel som källa eller destination för de data som alternativet kräver. För att komma åt eller skapa en fil kan du ställa in variabeln till ett containerfält.

För att komma åt en fil kan du ställa in variabeln till ett containerfält, som innehåller filen, och sedan använda variabeln som parameter för cURL-alternativet.

För att skapa en fil kan du använda en variabel som parameter för cURL-alternativet, ställa in ett containerfält till den variabeln och sedan exportera containerfältet som en fil.

Hantera fel

cURL-alternativ som inte stöds ignoreras.

Om du använder alternativet --show-error:

När fel som returneras av cURL-biblioteket får FileMaker-klienter att returnera felkod 1631 via Funktionen Get ( SenasteFel ) för att ange ett ospecificerat anslutningsfel, returnerar Funktionen Get ( SenasteExternaFelDetalj ) samma text som kommandoradverktyget curl.

När en åtgärd lyckas men servern returnerar en svarskod på 400 eller högre tillsammans med informationen, returnerar FileMaker-klienter lämplig felkod. Om det inte finns någon lämplig FileMaker-felkod, returnerar Get ( SenasteFel ) 1631 och Get ( SenasteExternaFelDetalj ) svarskoden i formatet "Svarskod: nnn".

Om du inte använder alternativet --show-error, gör serversvarskod 401 att Get ( SenasteFel ) returnerar FileMaker-felkoden 1627 ("Autentisering misslyckades"). Alla andra svarskoder returnerar FileMaker-felkod 0 ("Inget fel").

Exempel

Skickar HTTPS POST-data som två nyckel/värde-par, fname=Bob och lname=Smith, till exempel.com med identifieringsuppgifterna mittanvändarnamn och mittlösenord och lagrar begärda data i $$results-variabeln.

I scriptsteget Infoga från URL:

Ställ in Mål till variabeln $$results.

Ställ in Ange URL till https://exempel.com/.

Ställ in Ange cURL-tillval till en av följande likvärdiga uppsättningar av alternativ:

"--user mittanvändarnamn:mittlösenord --data fname=Bob&lname=Smith" "--user mittanvändarnamn:mittlösenord -d fname=Bob --data-ascii lname=Smith" "--user mittanvändarnamn:mittlösenord -d @$post_data"

där variabeln $post_data är inställt på nyckel/värde-par som text eller inställt på ett containerfält vars innehåll är en textfil som innehåller nyckel/värde-par.

Scriptet visar ovanstående exempel som skickar nyckel/värde-par från en fil i containerfältet post_data.

Ange variabel [ $post_data ; tabell::post_data ]
Infoga från URL [ Med dialogruta: Av; Mål: $$resultat ;
"https://exempel.com/" ; Verifiera SSL-certifikat ;
cURL-tillval: "--user mittanvändarnamn:mittlösenord -d @$post_data" ]

Kommentarer 

I cURL-alternativ ska varje citattecken föregås av ett omvänt snedstreck. För att ange en HTTP-header för Content-type: application/json, är exempelvis textuttrycket för Ange cURL-tillval:

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