API .Net HSM Dinamo
API Proprietária .Net do HSM Dinamo
post_put_get_delete_pix.cs

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).

Veja Nota sobre os exemplos.
using Dinamo.Hsm;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace PostGetDeletePIX
{
class Program
{
private static String strAddr = "10.0.0.1";
private static String strUsrId = "usuario";
private static String strPwd = "senha";
static void Main(string[] args)
{
byte[] pbMsgIn = Encoding.ASCII.GetBytes("<?xml version=\"1.0\" encoding=\"UTF - 8\" standalone=\"no\"?><xml>teste</xml>");
DinamoClient api = new DinamoClient();
api.Connect(strAddr, strUsrId, strPwd); // conecta
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>");
PIXResponse pixRexponse = api.postPIX(strKey,
strKeyCert,
strPIXChain,
strUrl,
pstrHeaderContents,
pbRequestData,
0,
0);
Console.Out.WriteLine("POST Header: " + Encoding.ASCII.GetString(pixRexponse.Header));
Console.Out.WriteLine("POST Body: " + Encoding.ASCII.GetString(pixRexponse.Body));
/*
* Chamada opcional de recuperação de detalhes da operação.
* */
DinamoApi.PIXHTTPReqDetails details = api.getPIXHTTPReqDetails();
Console.Out.WriteLine("Total time (ms): " + details.uiTotalTime);
Console.Out.WriteLine("HTTP response: " + details.lHttpResponseCode);
pixRexponse = api.putPIX(strKey,
strKeyCert,
strPIXChain,
strUrl,
pstrHeaderContents,
pbRequestData,
0,
0);
Console.Out.WriteLine("PUT Header: " + Encoding.ASCII.GetString(pixRexponse.Header));
Console.Out.WriteLine("PUT Body: " + Encoding.ASCII.GetString(pixRexponse.Body));
/*
* Chamada opcional de recuperação de detalhes da operação.
* */
details = api.getPIXHTTPReqDetails();
Console.Out.WriteLine("Total time (ms): " + details.uiTotalTime);
Console.Out.WriteLine("HTTP response: " + details.lHttpResponseCode);
pixRexponse = api.getPIX(strKey,
strKeyCert,
strPIXChain,
strUrl,
pstrHeaderContents,
0,
0);
Console.Out.WriteLine("GET Header: " + Encoding.ASCII.GetString(pixRexponse.Header));
Console.Out.WriteLine("GET Body: " + Encoding.ASCII.GetString(pixRexponse.Body));
pixRexponse = api.deletePIX(strKey,
strKeyCert,
strPIXChain,
strUrl,
pstrHeaderContents,
0,
0);
Console.Out.WriteLine("DELETE Header: " + Encoding.ASCII.GetString(pixRexponse.Header));
Console.Out.WriteLine("DELETE Body: " + Encoding.ASCII.GetString(pixRexponse.Body));
api.Disconnect();
}
}
}
Namespace que denota um conjunto de funções para acesso ao HSM Dinamo e suas respectivas exceptions.
Definition: DinamoClient.cs:12
Definition: DinamoClient.cs:12