Histórico da Página
Composition Setup |
---|
import.css=/download/attachments/3279126062824/newLayouttecnologia.css |
|
Pagetitle |
---|
...
...
|
Permite
...
emular
...
um
...
client
...
HTTP
...
-
...
Hypertext
...
Transfer
...
Protocol
...
diretamente
...
da
...
máquina
...
onde
...
o
...
Smart
...
Client
...
está
...
sendo
...
executado,
...
através
...
de
...
uma
...
função
...
AdvPL,
...
postando
...
um
...
bloco
...
de
...
informações
...
para
...
um
...
determinado
...
documento
...
publicado
...
em
...
um
...
servidor
...
Web,
...
utilizando
...
o
...
método
...
POST,
...
permitindo
...
a
...
passagem
...
de
...
parâmetros
...
adicionais
...
via
...
URL
...
e
...
aguardando
...
por
...
um
...
tempo
...
determinado
...
(time-out)
...
pela
...
resposta
...
do
...
servidor
...
solicitado.
Sintaxe
...
HTTPCPost ( < cUrl>, [ cPostParms], [ nTimeOut], [ aHeadStr], [ @cHeaderRet] ) --> cResponse
...
Bloco de código | ||
---|---|---|
| ||
HttpCPost( < cUrl >, [ cPostParms ], [ nTimeOut ], [ aHeadStr ], [ @cHeaderGet ] )
|
Parâmetros
Nome | Tipo | Descrição | Obrigatório | Referência |
---|---|---|---|---|
cUrl |
...
caractere | Indica o endereço HTTP com a pasta e o documento solicitado. | X | |
cPostParms |
...
caractere | Indica uma string de parâmetros, do tipo |
...
POST, que serão enviados ao servidor HTTP através da URL. Caso não seja especificado, este parâmetro será considerado vazio (""). | ||
nTimeOut |
...
numérico | Indica o tempo, em segundos, máximo de inatividade permitido durante a recepção do documento. Caso não seja especificado, o valor assumido será de 120 segundos. | ||
aHeadStr |
...
vetor | Indica o array que contêm as strings que serão acrescentadas no header da requisição HTTP que será realizada. Utilizar "|" (pipes) para separação entre parâmetro e valor. |
...
cHeaderGet |
...
caractere | Indica a string que conterá o header de resposta HTTP enviado pelo servidor requisitado. Observação: A variável deve ser declarada antes da chamada da função. | X |
Retorno
...
Nome | Tipo | Descrição |
---|---|---|
cRet | caractere | Retorna a string que corresponde a requisição solicitada. |
Observações
Importante
...
: Função disponível em versões iguais ou superiores a 7.00.
...
111010P
- O parâmetro cPostParms representa um texto que será enviado via "Post".
...
- (Exemplo
...
- "param1=
...
- value1&m2=value2").
- Caso não seja retornado o documento antes do término do time-out, especificado na chamada da função, ou não seja possível localizar o servidor; seja por falha de resolução de DNS ou por erro de sintaxe ao especificar a URL, a função retornará nulo (NIL).
- Ao utilizar a função HTTPCPost(), pode-se especificar um Content-Type diferenciado para o conteúdo postado. Caso não seja especificado um Content-Type, alguns servidores tratam a informação postada como sendo um dado do tipo 'application/x-www-form-url', ou seja, seria o equivalente a um formulário HTML postado via browser. Desta forma, outros servidores poderão não reconhecer tal informação postada dessa forma.
...
- Para especificar que o conteúdo postado deve ser tratado como um POST de formulário HTTP, deve-se passar no parâmetro um elemento 'Content-Type: application/x-www-form-url'.
Exemplos
Bloco de código | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
#INCLUDE "TOTVS.CH" User Function tstCpost() Local cUrl := "endereço do post" Local cPostPar := "String a ser eviada" Local nTimeOut := 2 //SegundosLocal Segundos Local aHeaderStr:= {} Local cHeaderRet:= "" Local cResponse := "" Local cErro := "" cPostPar := 'Conteudo a ser enviado via Post' aAdd(aHeaderStr,"Content-Type|text/xml; charset=utf-8" ) application/x-www-form-urlencoded") aAdd(aHeaderStr,"Content-Length| " + Alltrim(Str(Len(cPostPar))) ) cResponse := HttpCPost( cUrl , cPostPar , nTimeOut , aHeaderStr , @cHeaderRet ) VarInfo("Header:", cHeaderRet ) VarInfo("Retorno:", cResponse ) VarInfo("Erro:", HTTPGetStatus(cErro) ) VarInfo("Erro:", cErro ) ReturnProtheus 10 , TOTVS Application Server 10 , ByYou Application Server |