Histórico da Página
CONTEÚDO
- Visão geral
- Configuração
- Exemplo de utilização
01. VISÃO GERAL
...
A biblioteca OpenEdge.Net.pl é projetada para ser utilizada como uma API para fazer solicitações HTTP e HTTPS.
...
02. Configuração
...
Configuração
Para iniciar sua utilização é necessário incluir a biblioteca de procedimentos OpenEdge.Net.pl no PROPATH da seguinte maneira:
Sistema | Caminho da biblioteca |
---|---|
UNIX TTY | $DLC/tty/netlib/OpenEdge.Net.pl |
Windows GUI | %DLC%\gui\netlib\OpenEdge.Net.pl |
Windows TTY | %DLC%\tty\netlib\OpenEdge.Net.pl |
Informações | ||
---|---|---|
| ||
C:\dlc116dlc117\gui\netlib\OpenEdge.Net.pl |
03. EXEMPLO DE UTILIZAÇÃO
...
Recursos
OpenEdge.Net.HTPP.
...
IHttpRequest https://
...
docs.progress.com/
...
pt-BR/
...
bundle/openedge-programming-interfaces-117/page/OpenEdge.Net.HTTP.IHttpRequest.html
Toda solicitação possui dois elementos obrigatórios: Um verbo HTTP e URI.
...
Bloco de código | ||||
---|---|---|---|---|
| ||||
USING OpenEdge.Net.HTTP.RequestBuilder. USING OpenEdge.Net.HTTP.IHttpRequest. USING Progress.Json.ObjectModel.JsonObject. DEFINE VARIABLE httpUrl AS CHARACTER NO-UNDO. DEFINE VARIABLE oRequest AS IHttpRequest NO-UNDO. DEFINE VARIABLE oJson AS JsonObject NO-UNDO. httpUrl = "http://oemobiledemo.progress.com/VehicleOrderService/rest/VehicleOrder/Cart". oJson = new JsonObject(). oJson:Add('dsShoppingCart', new JsonObject()). oRequest = RequestBuilder:Put(httpUrl, oJson) :AcceptJson() :Request. |
OpenEdge.Net.HTPP.
...
HttpClient https://
...
docs.progress.com/
...
pt-BR/
...
bundle/openedge-programming-interfaces-117/page/OpenEdge.Net.HTTP.HttpClient.html
HttpClient faz a solicitação executando o método Execute(), que recebe IHttpRequest e retorna IHttpResponse.
...
Bloco de código | ||
---|---|---|
| ||
USING OpenEdge.Net.HTTP.IHttpRequest. USING OpenEdge.Net.HTTP.IHttpResponse. USING OpenEdge.Net.HTTP.ClientBuilder. DEFINE VARIABLE oRequest AS IHttpRequest NO-UNDO. DEFINE VARIABLE oResponse AS IHttpResponse NO-UNDO. oResponse = ClientBuilder:Build():Client:Execute(oRequest). MESSAGE oResponse:StatusCode SKIP oResponse:StatusReason SKIP VIEW-AS ALERT-BOX. |
OpenEdge.Net.HTTP.IHttpResponse
...
https://
...
docs.progress.com/
...
pt-BR/
...
bundle/openedge-programming-interfaces-117/page/OpenEdge.Net.HTTP.IHttpResponse.html
Quando a request tem um retorno de sucesso, um objeto IHttpResponse é retornado tendo duas propriedades importantes, Entity e StatusCode.
...
Bloco de código | ||||
---|---|---|---|---|
| ||||
USING OpenEdge.Net.HTTP.IHttpRequest. USING OpenEdge.Net.HTTP.IHttpResponse. USING OpenEdge.Net.HTTP.ClientBuilder. DEFINE VARIABLE oRequest AS IHttpRequest NO-UNDO. DEFINE VARIABLE oResponse AS IHttpResponse NO-UNDO. oResponse = ClientBuilder:Build():Client:Execute(oRequest). MESSAGE oResponse:StatusCode SKIP oResponse:StatusReason SKIP VIEW-AS ALERT-BOX. |
OpenEdge.Net.
...
URI https://
...
docs.progress.com/
...
pt-BR/
...
bundle/openedge-programming-interfaces-117/page/OpenEdge.Net.URI.html
A classe URI encapsula o endereço de destino, incluindo o esquema, host, porta, caminho, consulta e outros elementos URI relacionados.
Bloco de código | ||||
---|---|---|---|---|
| ||||
USING OpenEdge.Net.URI. USING OpenEdge.Net.UriSchemeEnum. DEFINE VARIABLE oURI AS URI NO-UNDO. oURI = new URI(string(UriSchemeEnum:http), 'oemobiledemo.progress.com'). oURI:Path = '/VehicleOrderService/rest/VehicleOrder/Cart'. oURI:AddQuery('filter', ''). |
Uso de
...
Cookies https://
...
docs.progress.com/
...
pt-BR/
...
bundle/openedge-programming-interfaces-117/page/Implementing-stateful-clients-with-cookies.
...
html
Os cookies são armazenados na instância de classe OpenEdge.Net.HTTP.ICookieJar.
...
Bloco de código | ||
---|---|---|
| ||
USING OpenEdge.Net.HTTP.IHttpClient. USING OpenEdge.Net.HTTP.ClientBuilder. USING OpenEdge.Net.HTTP.ICookieJar. USING OpenEdge.Net.HTTP.CookieJarBuilder. USING OpenEdge.Net.HTTP.Cookie. DEFINE VARIABLE moHttpClient AS IHttpClient NO-UNDO. moHttpClient = ClientBuilder:Build() :KeepCookies(CookieJarBuilder:Build():CookieJar) :Client. |
Considerações de
...
Segurança https://
...
docs.progress.com/
...
pt-BR/
...
bundle/openedge-programming-interfaces-117/page/Security-considerations.
...
html
O client HTPP pode realizar requisições HTTPS desde que os certificados do lado do client estejam instalados no armazenamento de certificados OpenEdge.
...