Opções cURL suportadas
cURL (Client for URLs) é uma biblioteca de padrão aberto de funções de software que habilita a Etapa de script Inserir do URL para oferecer suporte a muitas opções comuns de transferência de arquivo. Na etapa de script, use Especificar opções cURL para criar um cálculo que inclui uma ou mais das opções cURL a seguir.
Nota Nas opções do cURL, coloque um caractere de barra invertida antes das aspas. Por exemplo, para especificar um cabeçalho HTTP para Content-type: application/json
, a expressão do texto de Especificar opções cURL é:
"--header \"Content-type: application/json\""
Somente as opções listadas abaixo são suportadas pelos clientes do FileMaker. Para obter mais informações, consulte a documentação do cURL.
Opção1 |
Parâmetro2 |
Notas |
|
|
|
|
|
|
|
|
Especifique o arquivo de certificado de cliente3 que será usado com HTTPS, FTPS ou outro protocolo baseado em SSL. Anexe Essa opção adota um arquivo de certificado que tem uma chave privada e o certificado de cliente concatenado.
Use |
|
|
Especifique o tipo de certificado de cliente. |
|
|
|
|
|
Especifique um número decimal de segundos. |
|
|
O uso de "-" para tamanho de arquivo atual não é suportado. Os dados substituem, não anexam, destinos binários. |
|
|
Consulte a nota de tabela 3. |
|
|
O acesso direto ao arquivo e "-" são substituídos por uma variável do FileMaker. |
|
|
|
|
|
Consulte a nota de tabela 4. |
|
|
Consulte a nota de tabela 4. |
|
|
Consulte a nota de tabela 4. |
|
|
|
|
|
Consulte a nota de tabela 4. |
|
|
|
|
|
|
|
|
|
|
|
Consulte a nota de tabela 3. |
|
|
Especifique um número decimal de segundos. |
|
|
|
|
|
Quando Inserir do URL está direcionado para uma variável, use essa opção para forçar o armazenamento dos dados retornados como dados de container. |
|
|
Converte texto em opções que seguem imediatamente essa opção da codificação interna de caracteres do FileMaker para a codificação especificada. Use um dos nomes definidos para o parâmetro de |
|
|
Consulte a nota de tabela 4. |
|
|
|
|
|
|
|
|
|
|
|
Especifique um destes métodos. |
|
|
|
|
|
Acrescente |
|
|
|
|
|
|
|
|
Configure também |
|
|
Especifique um destes modos. |
|
|
|
|
|
|
|
|
Use essa opção uma vez para cada cabeçalho que você especificar. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Especifique um número inteiro de segundos. |
|
|
Especifique o tipo de chave privada. |
|
|
Especifique o arquivo de chave privada3. Use essa opção se você precisar fornecer a sua chave privada separadamente do arquivo de certificado. |
|
|
Especifique um número inteiro seguido por uma unidade opcional. |
|
|
|
|
|
Especifique uma porta ou um intervalo de portas. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Especifique um número decimal de segundos. |
|
|
Por padrão, uma resposta compactada é solicitada. Use essa opção para desativá-las. |
|
|
Por padrão, as mensagens de aviso de tempo limite estão ativadas. Use essa opção para desativá-las. |
|
|
|
|
|
O nome do arquivo é usado somente como um atributo de dados do container. |
|
|
Senha para a chave privada. Use essa opção se você precisar fornecer a senha da sua chave privada separadamente do arquivo de certificado. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Use essa opção uma vez para cada cabeçalho que você especificar. |
|
|
Diferente da ferramenta de linha de comando do curl, se a senha não existir, os clientes do FileMaker não solicitarão a senha ao usuário. |
|
|
|
|
|
|
|
|
Use essa opção uma vez para cada comando ao servidor de FTP. |
|
|
|
|
|
|
|
|
Aceita |
|
|
|
|
|
Use essa opção uma vez para cada resolvedor que você especificar. |
|
|
Consulte Como lidar com erros. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Especifique um número inteiro de bytes por segundo. |
|
|
Especifique um número inteiro de segundos. |
|
|
|
|
|
|
|
|
Aceita somente a especificação de expressão de data no estilo cURL. |
|
|
|
|
|
Consulte a nota de tabela 3. |
|
|
Consulte a nota de tabela 3. |
|
|
|
|
|
Consulte a nota de tabela 3. Não aceita mascaramento de nome de arquivo (especificação de nomes de arquivo que seguem um padrão). Para FTP e FTPS, o nome do arquivo após o upload no servidor será o mesmo nome do arquivo especificado no final do URL. Para todos os outros protocolos suportados, o nome do arquivo é o mesmo nome especificado nos dados de container; qualquer nome de arquivo no URL será ignorado. |
|
|
|
|
|
Diferente da ferramenta de linha de comando do curl, se a senha não existir, os clientes do FileMaker não solicitarão a senha ao usuário. |
|
|
|
|
|
Exibe informações sobre a versão da biblioteca cURL (libcurl). A primeira linha mostra a versão completa de libcurl e as outras bibliotecas de terceiros vinculadas. A segunda linha (que começa com "Features:") lista os recursos de libcurl permitidos. |
Notas da tabela
-
Algumas opções aceitam formatos longos e curtos do nome da opção (por exemplo,
‑‑data
e-d
). -
As partes opcionais dos parâmetros estão entre colchetes [ ].
-
O acesso direto ao arquivo é substituído por uma variável do FileMaker.
-
O acesso direto ao arquivo é substituído por uma variável do FileMaker com o prefixo @.
Utilização de variáveis
Apesar de nenhuma opção suportada permitir que você acesse ou crie arquivos diretamente no sistema de arquivos, você pode especificar uma variável do FileMaker como a fonte ou o destino dos dados que a opção exige. Para acessar ou criar um arquivo, você pode definir a variável como um campo de container.
Para acessar um arquivo, você pode definir a variável como um campo de container, que contém o arquivo, e usar essa variável como o parâmetro da opção cURL.
Para criar um arquivo, você pode usar uma variável como o parâmetro da opção cURL, definir um campo de container como essa variável e exportar o campo de container como um arquivo.
Como lidar com erros
As opções cURL não suportadas são ignoradas.
Se você usar a opção --show-error
:
-
Quando os erros retornados pela biblioteca de cURL fazem com que os clientes do FileMaker retornem o código de erro 1631 por meio da Função Get(LastError) para indicar uma falha de conexão não especificada, a Função Get(LastErrorDetail) retorna o mesmo erro retornado pela ferramenta de linha de comando do cURL.
-
Quando uma operação é bem-sucedida, mas o servidor retorna um código de resposta 400 ou superior com os dados, os clientes do FileMaker retornam um código de erro adequado. Se não houver um código de erro adequado do FileMaker, Get(LastError) retornará 1631 e Get(LastErrorDetail) retornará o código de resposta na forma "Código de resposta: nnn".
Se você não usar a opção --show-error
, o código de resposta do servidor 401 fará com que o Get(LastError) retorne o código de erro 1627 do FileMaker ("Falha na autenticação"). Todos os outros códigos de resposta retornam o código de erro 0 do FileMaker ("Sem erro").
Exemplo
Envia dados HTTPS POST como dois pares de chave-valor, fname=Bob
e lname=Smith
para exemplo.com usando as credenciais meunomedeusuário
e minhasenha
e armazena os dados solicitados na variável $$results.
Na etapa de script Inserir do URL:
-
Configure Destino como a variável chamada
$$results
. -
Defina Especificar URL como
https://exemplo.com/
. -
Configure Especificar opções cURL como um dos conjuntos de opções equivalentes a seguir:
"--user meunomedeusuário:minhasenha --data fname=Bob&lname=Smith"
"--user meunomedeusuário:minhasenha -d fname=Bob --data-ascii lname=Smith"
"--user meunomedeusuário:minhasenha -d @$post_data"
quando a variável
$post_data
estiver definida como pares de valores-chave como texto ou definida como um campo de container cujo conteúdo é um arquivo de texto contendo pares de valores-chave.
Este script mostra o exemplo acima enviando pares de chave-valor de um arquivo no campo de container post_data
.
Definir variável [ $post_data ; table::post_data ]
Inserir do URL [ Com diálogo: Off ; Destino: $$results ;
"https://exemplo.com/" ; Verificar certificados SSL ;
opções cURL: "--user meunomedeusuário:minhasenha -d @$post_data" ]