Histórico da Página
Composition Setup |
---|
import.css=/download/attachments/327912/newLayout.css |
Portuguese | ||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Função: HTTPCPost
|
Nome | Tipo | Descrição | Obrigatório | Referência |
cUrl | Caracter | Indica o endereço HTTP com a pasta e o documento solicitado. | X | |
cPostParms | Caracter | Indica uma string de parâmetros, do tipo GET, 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. | ||
cHeaderRet | Caracter | 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 |
- cResponse(caracter)
- Retorna a string que corresponde a requisição solicitada.
Importante |
---|
Esta função estará disponível após a build 7.00.101202A. |
O parâmetro 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'.
#INCLUDE "TOTVS.CH"User Function tstCpost()Local cUrl := "endereço do post"Local cPostPar := "String a ser eviada"Local nTimeOut := 2 //SegundosLocal aHeaderStr:= {}Local cHeaderRet:= ""Local cResponse := ""Local cErro := ""cPostPar := 'Conteudo a ser enviado via Post'aAdd(aHeaderStr,"Content-Type| text/xml; charset=utf-8" )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 )Return