지원되는 cURL 옵션

cURL(Client for URLs)은 URL에서 삽입 스크립트 단계가 다양한 일반 파일 전송 옵션을 지원하도록 하는 소프트웨어 함수의 오픈 표준 라이브러리입니다. 이 스크립트 단계에서 cURL 옵션 지정을 사용하여 다음 cURL 옵션 중 하나 이상을 포함하는 계산을 생성할 수 있습니다.

FileMaker 클라이언트는 아래에 나열된 옵션만 지원합니다. 자세한 정보는 cURL 문서를 참조하십시오.

 

옵션1

매개 변수2

참고

--anyauth

 

 

--basic

 

 

--ciphers

<list of ciphers>

 

--connect-timeout

<seconds>

초를 10진수로 지정합니다.

--continue-at
-C

<offset>

현재 파일 크기에 "-" 사용은 지원되지 않습니다. 데이터는 2진수인 대상체를 대치합니다(추가가 아님).

--cookie
-b

<name=data[;n2=d2]> 또는 <$[$]fmvariable>

표 참고 사항 3을 참조하십시오.

--cookie-jar
-c

<$[$]fmvariable>

직접적인 파일 접근 및 "-"를 FileMaker 변수로 대치합니다.

--crlf

 

 

--data
-d

<data> 또는 @<$[$]fmvariable>

표 참고 사항 4을 참조하십시오.

--data-ascii

<data> 또는 @<$[$]fmvariable>

표 참고 사항 4을 참조하십시오.

--data-binary

<data> 또는 @<$[$]fmvariable>

표 참고 사항 4을 참조하십시오.

--data-raw

<data>

 

--data-urlencode

<data> 또는 =<data> 또는 @<$[$]fmvariable> 또는 <name>=<data> 또는 <name>@<$[$]fmvariable>

표 참고 사항 4을 참조하십시오.

--digest

 

 

--disable-eprt

 

 

--disable-epsv

 

 

--dump-header
-D

<$[$]fmvariable>

표 참고 사항 3을 참조하십시오.

--expect100-timeout

<seconds>

초를 10진수로 지정합니다.

--fail
-f

 

 

--FM-return-container-variable

 

URL에서 삽입이 변수를 대상으로 하는 경우, 이 옵션을 사용하여 반환된 데이터를 컨테이너 데이터로 강제로 저장하십시오.

--FM-text-encoding

<encoding>

이 옵션을 바로 따르는 옵션들에 있는 텍스트를 FileMaker 내부 문자 인코딩에서 지정된 인코딩으로 변환합니다. TextEncode 함수 함수의 encoding 매개 변수에 대해 정의된 이름 중 하나를 사용합니다.

--form
-F

<name=content> 또는 <name=@$[$]fmvariable>

표 참고 사항 4을 참조하십시오.

--form-string

<name=content>

 

--ftp-alternative-to-user

<command>

 

--ftp-create-dirs

 

 

--ftp-method

multicwd, nocwd, 또는 singlecwd

이 방법 중 하나를 지정합니다.

--ftp-pasv

 

 

--ftp-port
-P

<interface> 또는 <IP address> 또는 <host name> 또는 -

[Start]-[end]를 추가하여 포트의 범위를 지정합니다.

--ftp-pret

 

 

--ftp-skip-pasv-ip

 

 

--ftp-ssl-ccc

 

또한 --ftp-ssl-ccc-modepassive로 설정합니다(아직 설정되지 않은 경우).

--ftp-ssl-ccc-mode

active 또는 passive

이 모드 중 하나를 지정합니다.

--ftp-ssl-control

 

 

--head
-I

 

 

--header
-H

<name: value>

지정한 각 머리말에 이 옵션을 한 번씩 사용합니다.

--ignore-content-length

 

 

--interface

<name>

 

--ipv4
-4

 

 

--ipv6
-6

 

 

--junk-session-cookies
-j

 

 

--keepalive-time

<seconds>

초를 정수로 지정합니다.

--limit-rate

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

정수 다음에 선택적 단위를 지정합니다.

--list-only
-l

 

 

--local-port

<num>[-num]

하나의 포트 또는 포트 범위를 지정합니다.

--location
-L

 

 

--location-trusted

 

 

--mail-auth

<address>

 

--mail-from

<address>

 

--mail-rcpt

<address>

 

--max-filesize

<bytes>

 

--max-time
-m

<seconds>

초를 10진수로 지정합니다.

--no-compressed

 

기본적으로 압축된 응답이 요청됩니다. 이 옵션을 사용하여 비활성화할 수 있습니다.

--no-keepalive

 

기본적으로 킵얼라이브 메시지가 활성화됩니다. 이 옵션을 사용하여 비활성화할 수 있습니다.

--noproxy

<host[,host]> or *

 

--output
-o

<filename>

파일 이름은 컨테이너 데이터의 속성으로 사용됩니다.

--path-as-is

 

 

--post301

 

 

--post302

 

 

--post303

 

 

--proxy
-x

<[protocol://][user:password@]proxyhost[:port]>

 

--proxy-anyauth

 

 

--proxy-basic

 

 

--proxy-digest

 

 

--proxy-header

<name: value>

지정한 각 머리말에 이 옵션을 한 번씩 사용합니다.

--proxy-user
-U

<user:password>

cURL 명령 행 도구와는 다르게, 암호가 존재하지 않는 경우 FileMaker 클라이언트는 사용자에게 암호를 요청하지 않습니다.

--proxy1.0

<proxyhost[:port]>

 

--proxytunnel
-p

 

 

--quote
-Q

<command>

이 옵션을 FTP 서버에 대한 각 명령에 한 번씩 사용합니다.

--range
-r

<range>

 

--raw

 

 

--referer
-e

<URL>

--location과 함께 사용된 경우 URL의 끝에 ;auto를 지원합니다.

--request
-X

<command>

 

--resolve

<host:port:address>

이 옵션을 지정한 각 리졸버에 한 번씩 사용합니다.

--show-error
-S

 

오류 처리하기를 참조하십시오.

--socks4

<host[:port]>

 

--socks4a

<host[:port]>

 

--socks5

<host[:port]>

 

--socks5-hostname

<host[:port]>

 

--speed-limit
-Y

<speed>

초당 바이트(bps)를 정수로 지정합니다.

--speed-time
-y

<time>

초를 정수로 지정합니다.

--ssl

 

--ftp-ssl도 지원됩니다.

--ssl-reqd

 

--ftp-ssl-reqd도 지원됩니다.

--time-cond
-z

<date expression>

cURL 스타일 날짜 표현식 지정만 지원합니다.

--tr-encoding

 

 

--trace

<$[$]fmvariable>

표 참고 사항 3을 참조하십시오.

--trace-ascii

<$[$]fmvariable>

표 참고 사항 3을 참조하십시오.

--trace-time

 

 

--upload-file
-T

<$[$]fmvariable>

표 참고 사항 3을 참조하십시오. 글로빙(패턴에 맞는 파일 이름을 지정)은 지원하지 않습니다. FTP 및 FTPS의 경우, 서버로 업로드한 후 파일 이름은 URL의 끝에 지정된 파일 이름과 동일합니다. 다른 지원 프로토콜의 경우, 파일 이름은 컨테이너 데이터에 지정된 파일 이름과 동일합니다. URL에 있는 파일 이름은 무시됩니다.

--use-ascii
-B

 

 

--user
-u

<user:password>

cURL 명령 행 도구와는 다르게, 암호가 존재하지 않는 경우 FileMaker 클라이언트는 사용자에게 암호를 요청하지 않습니다.

--user-agent
-A

<agent string>

 

테이블 참고 사항

1. 일부 옵션의 경우, 옵션 이름의 긴 형식과 축약 형식을 지원합니다(예: ‑‑data-d).

2. 매개 변수의 선택적 부분은 [ ] 괄호 안에 있습니다.

3. 직접적인 파일 접근은 FileMaker 변수로 대치됩니다.

4. 직접적인 파일 접근은 @ 문자가 앞에 붙는 FileMaker 변수로 대치됩니다.

변수 사용하기

모든 지원되는 옵션이 직접적인 접근을 허용하지 않거나 파일 시스템에서 파일 생성을 허용하지 않더라도 FileMaker 변수를 옵션이 필요한 데이터의 원본 또는 대상으로 지정할 수 있습니다. 파일을 생성하거나 접근하려면 컨테이너 필드에 변수를 설정할 수 있습니다.

파일에 접근하려면 해당 파일을 포함하는 컨테이너 필드에 변수를 설정한 다음 cURL 옵션의 매개 변수로 해당 변수를 사용할 수 있습니다.

파일을 생성하려면 변수를 cURL 옵션의 매개 변수로 사용하고 해당 변수에 컨테이너 필드를 설정한 다음 컨테이너 필드를 파일로 내보낼 수 있습니다.

오류 처리하기

지원되지 않는 cURL 옵션은 무시됩니다.

--show-error 옵션을 사용하는 경우:

cURL 라이브러리에서 반환한 오류가 FileMaker 클라이언트에서 Get(마지막 오류) 함수를 통해서 오류 코드 1631을 반환하도록 하여 지정되지 않은 연결이 실패하는 것을 나타내는 경우 Get(마지막 외부 오류 세부 정보) 함수는 cURL 명령 행 도구가 반환하는 것과 동일한 텍스트를 반환합니다.

작업이 성공했지만 서버가 응답 코드 400 또는 그 이상을 데이터와 함께 반환하는 경우 FileMaker 클라이언트는 적절한 오류 코드를 반환합니다. 적절한 FileMaker 오류 코드가 없는 경우 Get(마지막 오류) 함수는 1631을 반환하고 Get(마지막 외부 오류 세부 정보) 함수는 응답 코드를 "응답 코드: nnn"의 형태로 반환합니다.

--show-error 옵션을 사용하지 않는 경우 서버 응답 코드 401은 Get(마지막 오류) 함수가 FileMaker 오류 코드 1627("인증에 실패했습니다")를 반환하도록 합니다. 모든 기타 응답 코드는 FileMaker 오류 코드 0("오류 없음")을 반환합니다.

예제

HTTPS POST 데이터를 myusernamemypassword 인증서를 사용하여 두 개의 키 값 쌍(fname=Boblname=Smith)으로 example.com에 보내고, $$results 변수에 요청된 데이터를 저장합니다.

URL에서 삽입 스크립트 단계에서 다음을 수행합니다.

$$results 변수에 대상을 설정합니다.

https://example.com/URL 지정을 설정합니다.

옵션의 동일한 세트 중 하나에 다음과 같이 cURL 옵션 지정을 설정합니다.

"--user myusername:mypassword --data fname=Bob&lname=Smith" "--user myusername:mypassword -d fname=Bob --data-ascii lname=Smith" "--user myusername:mypassword -d @$post_data"

이 옵션은 $post_data 변수가 키 값 쌍에 텍스트로 설정되어 있거나 키 값 쌍을 포함하는 텍스트 파일 콘텐츠를 가진 컨테이너 필드에 설정되어 있습니다.

이 스크립트는 post_data 컨테이너 필드의 파일에서 키 값 쌍을 전송하는 위의 예제를 표시합니다.

변수 설정 [ $post_data ; 테이블::post_data ]
URL에서 삽입 [ 대화상자 사용: 끔 ; 대상: $$results ;
"https://example.com/" ; SSL 인증서 확인 ;
cURL 옵션: "--user myusername:mypassword -d @$post_data" ]

참고 

cURL 옵션 내에서 각 따옴표와 백슬래시가 앞에 나옵니다. 예를 들어 콘텐츠 유형: application/json에 대해 HTTP 헤더를 지정하려면 cURL 옵션 지정에 대한 텍스트 표현식은 다음과 같습니다.

"--header \"콘텐츠 유형: application/json\""