Exemplo de uso das operações POST, PUT, GET e DELETE HTTP para envios no padrão PIX definido no SPI(Sistema de Pagamentos Instantâneos) com abstrações básicas.
using System;
using System.Collections.Generic;
using System.Text;
namespace PostGetDeletePIX
{
class Program
{
private static String strAddr = "10.0.0.1";
private static String strUsrId = "master";
private static String strPwd = "12345678";
static void Main(string[] args)
{
byte[] pbMsgIn = Encoding.ASCII.GetBytes("<?xml version=\"1.0\" encoding=\"UTF - 8\" standalone=\"no\"?><xml>teste</xml>");
api.
Connect(strAddr, strUsrId, strPwd);
String strKey = "key";
String strKeyCert = "key_cert";
String strPIXChain = "pix_chain";
String strUrl = "https://127.0.0.1:8000";
String []pstrHeaderContents = { "Content-Type: application/xml; charset=utf-8" };
byte[] pbRequestData = Encoding.ASCII.GetBytes("<?xml version=\"1.0\" encoding=\"UTF - 8\" standalone=\"no\"?><xml>teste</xml>");
strKeyCert,
strPIXChain,
strUrl,
pstrHeaderContents,
pbRequestData,
0,
true,
false);
Console.Out.WriteLine(
"POST Header: " + Encoding.ASCII.GetString(pixRexponse.
Header));
Console.Out.WriteLine(
"POST Body: " + Encoding.ASCII.GetString(pixRexponse.
Body));
pixRexponse = api.
putPIX(strKey,
strKeyCert,
strPIXChain,
strUrl,
pstrHeaderContents,
pbRequestData,
0,
true,
false);
Console.Out.WriteLine(
"PUT Header: " + Encoding.ASCII.GetString(pixRexponse.
Header));
Console.Out.WriteLine(
"PUT Body: " + Encoding.ASCII.GetString(pixRexponse.
Body));
pixRexponse = api.
getPIX(strKey,
strKeyCert,
strPIXChain,
strUrl,
pstrHeaderContents,
0,
true,
false);
Console.Out.WriteLine(
"GET Header: " + Encoding.ASCII.GetString(pixRexponse.
Header));
Console.Out.WriteLine(
"GET Body: " + Encoding.ASCII.GetString(pixRexponse.
Body));
strKeyCert,
strPIXChain,
strUrl,
pstrHeaderContents,
0,
true,
false);
Console.Out.WriteLine(
"DELETE Header: " + Encoding.ASCII.GetString(pixRexponse.
Header));
Console.Out.WriteLine(
"DELETE Body: " + Encoding.ASCII.GetString(pixRexponse.
Body));
}
}
}
Classe de API para acesso às funcionalidades do HSM Dinamo. Nessa classe é possível programar utiliza...
Definição DinamoClient.cs:93
Classe que encapsula a resposta de uma requisição HTTP PIX padrão SPI(Sistema de Pagamentos Instantân...
Definição DinamoClient.cs:36
byte[] Header
Definição DinamoClient.cs:37
byte[] Body
Definição DinamoClient.cs:38
PIXResponse putPIX(string KeyId, string CertId, string PIXCertChainId, string URL, string[] RequestHeaderList, byte[] RequestData, Int32 TimeOut, bool UseGzip, bool VerifyHostName)
Faz uma requisição segura HTTP PUT seguindo o padrão PIX definido no SPI (Sistema de Pagamentos Insta...
Definição DinamoClient.cs:5427
PIXResponse getPIX(string KeyId, string CertId, string PIXCertChainId, string URL, string[] RequestHeaderList, Int32 TimeOut, bool UseGzip, bool VerifyHostName)
Faz uma requisição segura HTTP GET seguindo o padrão PIX definido no SPI (Sistema de Pagamentos Insta...
Definição DinamoClient.cs:5518
PIXResponse postPIX(string KeyId, string CertId, string PIXCertChainId, string URL, string[] RequestHeaderList, byte[] RequestData, Int32 TimeOut, bool UseGzip, bool VerifyHostName)
Faz uma requisição segura HTTP POST seguindo o padrão PIX definido no SPI (Sistema de Pagamentos Inst...
Definição DinamoClient.cs:5335
PIXResponse deletePIX(string KeyId, string CertId, string PIXCertChainId, string URL, string[] RequestHeaderList, Int32 TimeOut, bool UseGzip, bool VerifyHostName)
Faz uma requisição segura HTTP DELETE seguindo o padrão PIX definido no SPI (Sistema de Pagamentos In...
Definição DinamoClient.cs:5629
void Connect(string User, string Password)
Estabelece uma conexão cifrada com o HSM utilizando as configurações de load balance.
Definição DinamoClient.cs:562
void Disconnect(bool flagClose)
Encerra a conexão com o HSM.
Definição DinamoClient.cs:814
Namespace que denota um conjunto de funções para acesso ao HSM Dinamo e suas respectivas exceptions.
Definição DinamoClient.cs:12