| Composition Setup |
|---|
import.css=/download/attachments/6062824/tecnologia.css
|
| Pagetitle |
|---|
| Classe TSocketClientTSSLClient |
|---|
| Classe TSocketClientTSSLClient |
|---|
|
Estabelece uma conexão client de socket do tipo TCP SSL/TLS genérica. Através desta classe, é possível enviar e receber dados por meio de um socket SSL/TLS genérico e utilizar como base para implementação de protocolo não suportado pela aplicação.
| Aviso |
|---|
Esta classe está disponível a partir da versão 19.3.1.0 do TOTVS Application Server. |
Hierarquia
Construtores
| Inclusão de trecho |
|---|
| tec:Classe TSSLClient - Construtorestec: |
|---|
| Classe TSSLClient - Construtores |
|---|
| nopanel | true |
|---|
|
Métodos
| Inclusão de trecho |
|---|
| tec:Classe TSSLClient - Métodostec: |
|---|
| Classe TSSLClient - Métodos |
|---|
| nopanel | true |
|---|
|
...
| Bloco de código |
|---|
| language | cpp |
|---|
| theme | Eclipse |
|---|
| title | Exemplo 1 |
|---|
| linenumbers | true |
|---|
| collapse | false |
|---|
|
#INCLUDE 'TOTVS.CH'
// --------------------------------------------
// Exemplo de conexão via Socket, neste caso
// será conectado um socket em Delphi via AdvPLde um servidor HTTPS na maquina local
// --------------------------------------------
User Function SocketTest()
Local oObj := tSocketClientTSSLClient():New()
Local nX := 0
// -------------------------------
// Tenta conectar 3 vezes
// -------------------------------
For nX := 1 to 3
nPort := 812443
nIp := 'localhost'
nResp := oObj:Connect( nPort,nIp,10 )
// -------------------------------
// Se conectou abandona o FOR
// -------------------------------
if(nResp == 0 )
exit
else
conout("--> Tentativa de Conexão: " + StrZero(nX,3))
Sleep(2000)
continue
endif
Next
// --------------------------------------
// Verifica se a conexão foi bem sucedida
// --------------------------------------
if( !oObj:IsConnected() )
conout("--> Falha na conexão")
return
else
conout("--> Conexão OK")
endif
// -------------------------------
// Teste de envio para o socket
// -------------------------------
cSend := "Dados enviados pelo AdvPL..."GET / HTTP/1.1"+CRLF
cSend += "Host: localhost" +CRLF+CRLF
nResp := oObj:Send( cSend )
if( nResp != len( cSend ) )
conout( "--> Erro! Dado não transmitido" )
else
conout( "--> Dado Enviado - Retorno: " +StrZero(nResp,5) )
endif
// -------------------------------
// Teste de recebimento do socket
// -------------------------------
cBuffer := ""
nResp = oObj:Receive( @cBuffer, 10000 )
if( nResp >= 0 )
conout( "--> Dados Recebidos " + StrZero(nResp,5) )
conout( "--> ["+cBuffer+"]" )
else
conout( "--> Não recebi dados" )
endif
// -------------------------------
// Fecha conexão
// -------------------------------
oObj:CloseConnection()
conout( "--> Conexão fechada" )
Return
|
| Nota |
|---|
|
As configurações de protocolo e certificados deve ser realizadas através da seção SSLConfigure. |