Components | All | New | MacOS | Windows | Linux | iOS | ||||
Examples | Mac & Win | Server | Client | Guides | Statistic | FMM | Blog | Deprecated | Old |
Returns the result of the transaction as text.
Component | Version | macOS | Windows | Linux | Server | iOS SDK |
CURL | 2.5 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes |
Parameter | Description | Example | Flags |
---|---|---|---|
curl | The CURL session handle. | $curl | |
Encoding | The text encoding for result. Default is native. This function can also handle UTF-16 as well as UTF-16LE and UTF-16BE for little/big endian byte order. Possible encoding names: ANSI, ISO-8859-1, Latin1, Mac, Native, UTF-8, DOS, Hex, Base64 or Windows. More listed in the FAQ. |
"UTF-8" | Optional |
preserveLineEndings | Whether to change line endings to CR for FileMaker. By default (0) we change the line endings to CR, so FileMaker has no trouble. Pass 1 to keep whatever line endings are there. |
0 | Optional |
The result as text.
Query result as UTF-8 text:
MBS("CURL.GetResultAsText"; $curl; "UTF-8")
Query result as Windows Ansi encoding:
MBS("CURL.GetResultAsText"; $curl; "windows")
Get result text and convert line endings for FileMaker:
MBS("Text.ReplaceNewline"; MBS("CURL.GetResultAsText"; $curl);1)
Download some text:
Set Variable [$curl; Value:MBS("CURL.New")]
Set Variable [$result; Value:MBS("CURL.SetOptionURL"; $curl; CURL Test::URL)]
Set Field [CURL Test::Result; MBS("CURL.Perform"; $curl)]
Set Field [CURL Test::Text; MBS("CURL.GetResultAsText"; $curl; "UTF8")]
Set Variable [$result; Value:MBS("CURL.Release"; $curl)]
Download a text from URL:
# start new transfer
Set Variable [$curl; Value:MBS("CURL.New")]
# set URL
Set Variable [$r; Value:MBS("CURL.SetOptionURL"; $curl; "https://www.mbsplugins.eu/")]
# run transfer
Set Variable [$ErrorCode; Value:MBS("CURL.Perform"; $curl)]
# get result as text and debug messages:
Set Variable [$TextResult; Value:MBS( "CURL.GetResultAsText"; $curl)]
Set Variable [$DebugMessages; Value:MBS( "CURL.GetDebugMessages"; $curl)]
# cleanup
Set Variable [$r; Value:MBS("CURL.Release"; $curl)]
Query webservice with JSON request:
Set Variable [$curl; Value:MBS("CURL.New")]
Set Variable [$result; Value:MBS("CURL.SetOptionURL"; $curl; "http://test.test/ws/v1/catalogo/getmodelos")]
#pass JSON for query
Set Variable [$result; Value:MBS("CURL.SetOptionPostFields"; $curl; "{\"brandId\" : \"1\", \"device\" : \"70\"}"; "UTF-8")]
Set Field [models::result; MBS("CURL.Perform"; $curl)]
Set Field [models::text; MBS("CURL.GetResultAsText"; $curl;"UTF8")]
Set Field [models::header; MBS("CURL.GetDebugMessages"; $curl)]
Set Variable [$result; Value:MBS("CURL.Release"; $curl)]
Query list of emails via POP3:
# query list of emails
Set Variable [ $curl ; Value: MBS("CURL.New") ]
#
# setup pop3 server
Set Variable [ $r ; Value: MBS("CURL.SetOptionURL"; $curl; "pop3://sslin.df.eu/") ]
Set Variable [ $result ; Value: MBS("CURL.SetOptionUseSSL"; $curl; 3) // required ]
Set Variable [ $result ; Value: MBS("CURL.SetOptionSSLVersion"; $curl; 6) // TLS v1.2 ]
#
# login
Set Variable [ $r ; Value: MBS("CURL.SetOptionUserName"; $curl; Postbox::Username) ]
Set Variable [ $r ; Value: MBS("CURL.SetOptionPassword"; $curl; Postbox::Password) ]
#
# list emails
Set Variable [ $result ; Value: MBS("CURL.Perform"; $curl) ]
# We show results for debugging
Set Variable [ $output ; Value: MBS("CURL.GetResultAsText"; $curl) ]
Set Variable [ $debug ; Value: MBS("CURL.GetDebugAsText"; $curl) ]
Set Variable [ $r ; Value: MBS("CURL.Release"; $curl) ]
#
Set Field [ Postbox::Log ; $debug ]
Set Field [ Postbox::Output ; $output ]
Get multiple emails via POP3 over the same connection by reusing it:
# query list of emails
Set Variable [ $curl ; Value: MBS("CURL.New") ]
#
# setup pop3 server
Set Variable [ $result ; Value: MBS("CURL.SetOptionUseSSL"; $curl; 3) // required ]
Set Variable [ $result ; Value: MBS("CURL.SetOptionSSLVersion"; $curl; 6) // TLS v1.2 ]
#
# login
Set Variable [ $r ; Value: MBS("CURL.SetOptionUserName"; $curl; IMAP Postbox::Username) ]
Set Variable [ $r ; Value: MBS("CURL.SetOptionPassword"; $curl; IMAP Postbox::Password) ]
#
# get first email
Set Variable [ $r ; Value: MBS("CURL.SetOptionURL"; $curl; "pop3://sslin.df.eu/1") ]
Set Variable [ $result ; Value: MBS("CURL.Perform"; $curl) ]
#
# We show results for debugging
Set Variable [ $output ; Value: MBS("CURL.GetResultAsText"; $curl) ]
Set Variable [ $debug ; Value: MBS("CURL.GetDebugAsText"; $curl) ]
Set Field [ IMAP Postbox::Log ; $debug ]
Set Field [ IMAP Postbox::Output ; $output ]
#
# give you time to see it
Pause/Resume Script [ Indefinitely ]
# get second email, reuse same curl connection
Set Variable [ $r ; Value: MBS("CURL.SetOptionURL"; $curl; "pop3://sslin.df.eu/2") ]
Set Variable [ $result ; Value: MBS("CURL.Perform"; $curl) ]
#
# We show results for debugging
Set Variable [ $output ; Value: MBS("CURL.GetResultAsText"; $curl) ]
Set Variable [ $debug ; Value: MBS("CURL.GetDebugAsText"; $curl) ]
Set Field [ IMAP Postbox::Log ; $debug ]
Set Field [ IMAP Postbox::Output ; $output ]
#
# give you time to see it
Pause/Resume Script [ Indefinitely ]
# get third email, reuse same curl connection
Set Variable [ $r ; Value: MBS("CURL.SetOptionURL"; $curl; "pop3://sslin.df.eu/3") ]
Set Variable [ $result ; Value: MBS("CURL.Perform"; $curl) ]
#
# We show results for debugging
Set Variable [ $output ; Value: MBS("CURL.GetResultAsText"; $curl) ]
Set Variable [ $debug ; Value: MBS("CURL.GetDebugAsText"; $curl) ]
Set Field [ IMAP Postbox::Log ; $debug ]
Set Field [ IMAP Postbox::Output ; $output ]
#
Set Variable [ $r ; Value: MBS("CURL.Release"; $curl) ]
This function checks for a license.
Created 18th August 2014, last changed 16th February 2023