Páginas filhas
  • FWRest

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Classe: FWRest


Descrição
Classe Client de REST


Exemplo
user Function tstFwRestTest()
Local oRestClient := FWRest():New("http://code.google.com")//)
oRestClient:setPath("/p/json-path/")
If oRestClient:Get()
   ConOut(oRestClient:GetResult())
Else
   conout(oRestClient:GetLastError())
Endif
Return


Exemplo de envio de arquivo .gz

Clique para visualizar o exemplo
Toggle Cloak
id@arqgz

Cloak
id@arqgz
#include "protheus.ch"

//-------------------------------------------------------------------
/*/{Protheus.doc} x16165
Função para post na API /api/batch/contratos em
https://seusite.com.br, utilizando da classe
@sample U_x16165()
@author Daniel Mendes
@since 22/03/2019
@version 1.0
/*/
//-------------------------------------------------------------------
user function x16165()
local oRestClient as object
local cUrl as char
local cPath as char
local aHeadOut as array
local oFile as object

cUrl := "https://seusite.com.br"
cPath := "/api/batch/contratos" aHeadOut := {} Aadd(aHeadOut, "Authorization: Basic " + Encode64("app01:fTdUlDgdQQ4MRQhLahykiKhON6k97Zfly5SV6fwpa5zCE")) Aadd(aHeadOut, "Content-Type: application/json") Aadd(aHeadOut, "Content-Encoding: gzip") oFile := FwFileReader():New("\contratos_20190316.gz") if oFile:Open() oRestClient := FWRest():New(cUrl) oRestClient:SetPath(cPath) oRestClient:SetPostParams(Encode64(oFile:FullRead())) oFile:Close() if oRestClient:Post(aHeadOut) showResult(oRestClient:GetResult()) else showResult(oRestClient:GetLastError()) endif FWFreeVar(@oRestClient) endif FWFreeVarFreeObj(@oFileoFile) return nil //------------------------------------------------------------------- /*/{Protheus.doc} showResult Exibe o resultado do método POST, sendo em console ou tela @param cValue String contendo o conteúdo que será exibido @sample showResult("Teste") @author Daniel Mendes @since 22/03/2019 @version 1.0 /*/ //------------------------------------------------------------------- static function showResult(cValue) if IsBlind() Conout(cValue) else MsgInfo(cValue) endif return nil



Painel

New

Sintaxe
FWREST():New(<cHost >)-> NIL

Descrição
Construtor

Parâmetros

NomeTipoDescriçãoDefaultObrigatórioReferência
cHostCaracteresEndereço do Host que iremos fazer o consumo do REST
X
Painel

SetPath

Sintaxe
FWREST():SetPath(<cPath >)-> NIL

Descrição
Informa o path aonde será feito a requisição

Parâmetros

NomeTipoDescriçãoDefaultObrigatórioReferência
cPathCaracteresPath do caminho da requisição
X
Painel

Get

Sintaxe
FWREST():Get(<aHeadStr >, <cGetParam>)-> lOK

Descrição
Efetua o Comando Get, no Host e Path informados anteriormente.
Utilize o método getResult para pegar o resultado
Ou o método GetLastError para verificar o erro.

Parâmetros

NomeTipoDescriçãoDefaultObrigatórioReferência
aHeadStrArrayArray com parâmetros do head
X
cGetParamCaracteresIndica a lista de strings de parâmetros que serão enviadas ao servidor HTTP, através da URI""


Retorno
lOK Retorna .T. se o Get retornar o HTTP code 200.

Painel

GetResult

Sintaxe
FWREST():GetResult()-> cResult

Descrição
Retorna o ultimo conteúdo valido retornado pela uma chamada ao método Get ou Post

Retorno
cResult Resultado da Operação

Painel

GetLastError

Sintaxe
FWREST():GetLastError()-> cErro

Descrição
Retorna o ultimo erro retornado pela uma chamada ao método Get ou Post

Retorno
cErro Erro da Operação 

Painel

Post

Sintaxe
FWREST():Post(<aHeadStr >)-> lOK

Descrição
Efetua o Comando POST, no Host e Path informados anteriormente.
Utilize o método getResult para pegar o resultado
Ou o método GetLastError para verificar o erro.

Parâmetros

NomeTipoDescriçãoDefaultObrigatórioReferência
aHeadStrArrayArray com parâmetros do head
X


Retorno
lOK Retorna .T. se conseguir fazer a conexão.

Painel

SetPostParams

Sintaxe
FWREST():SetPostParams(<cParams >)-> NIL

Descrição
Seta a string de parâmetro do Post

Parâmetros

NomeTipoDescriçãoDefaultObrigatórioReferência
cParamsCaracteresParâmetros do Post
X
Painel

Put

Sintaxe
FWREST():Put(<aHeadStr >, <cPayLoad>)-> lOK

Descrição
Efetua o Comando Put, no Host e Path informados anteriormente.
Utilize o método getResult para pegar o resultado
Ou o método GetLastError para verificar o erro.

Parâmetros

NomeTipoDescriçãoDefaultObrigatórioReferência
aHeadStrArrayArray com parâmetros do head
X
cPayLoadCaracteresCorresponde à StringList de parâmetros a serem enviados ao servidor HTTP""


Retorno
lOK Retorna .T. se o Get retornar o HTTP code 200 ou 201.

Painel

Delete

Sintaxe
FWREST():Delete(<aHeadStr >, <cPayLoad>)-> lOK

Descrição
Efetua o Comando DELETE, no Host e Path informados anteriormente.
Utilize o método getResult para pegar o resultado
Ou o método GetLastError para verificar o erro.

Parâmetros

NomeTipoDescriçãoDefaultObrigatórioReferência
aHeadStrArrayArray com parâmetros do head
X
cPayLoadCaracteresCorresponde à StringList de parâmetros a serem enviados ao servidor HTTP""


Retorno
lOK Retorna .T. se o Get retornar o HTTP code 200 ou 201.



Painel

SetChkStatus

Sintaxe
FWRest():SetChkStatus(lChk)-> Nil

Descrição
Seta a variável de controle de checagem do HTTP Code, onde se informado falso, apenas retornamos o lOk como true para indicar que realizamos a conexão, ficando a critério do responsável validar o HTTP Code retornado pela requisição.

Parâmetros

NomeTipoDescriçãoDefaultObrigatórioReferência
lChkLógicoVariável de decisão sobre quem irá checar o retorno do HTTP Code.T.


Retorno
Nil

Informações

Método disponível a partir da Release 23 do Protheus 12.

Painel

GetChkStatus

Sintaxe
FWRest():GetChkStatus()->lChk

Descrição
Retorna o conteúdo do parâmetro lChkStatusCode que será utilizado nos métodos Get, Post, Put e Delete onde é feito a decisão de quem irá tratar o HTTP Code.

Retorno
lChkStatusCode - Variável de decisão de quem trata a checagem de HTTP Code

Informações

Método disponível a partir da Release 23 do Protheus 12.

Painel

GetHTTPCode

Sintaxe
FWRest():GetHTTPCode()

Descrição
Método que retorna o HTTPCode da requisição.

Retorno
cResult – Retorno HTTP Code da requisição

Informações

Método disponível a partir da Release 23 do Protheus 12.



Painel

SetGetParams

Sintaxe
FWRest():SetGetParams(cGetParams)

Descrição
Efetua o set de uma string de parâmetros, do tipo GET, que serão enviados ao servidor HTTP através da URI.

Parâmetros

NomeTipoDescriçãoDefaultObrigatórioReferência
cGetParamsCharactereString contendo o valor do parâmetro GET, utilizado na URI
X
Informações

Método disponível a partir da LIB 20201009