ERP - Integração REST/JSON - Como efetuar a conversão (parse) de um retorno efetuado para uma API no padrão JSON/REST
Dúvida
Como efetuar a conversão (parse) de um retorno efetuado para uma API no padrão JSON/REST?
Solução
Para que você possa efetuar a conversão (parse) de caracteres retornados através da chamada de uma API do formato REST/JSON, execute o processo abaixo:
1. Efetue a chamada para a API normalmente, utilizando as funções HTTPs disponíveis no sistema;
2. Efetue o tratamento adequado na sua regra para fazer a conversão/parse do retorno da API. Abaixo segue um exemplo de regra que contempla esse tipo de conversão:
Definir funcao fCarUni();
Definir alfa aCarUni;
Definir alfa oObjHtp;
Definir alfa aTokVex;
Definir alfa aUrlVex;
Definir alfa aDadHtp;
Definir alfa aUrlHtp;
Definir alfa aRetHtp;
ConverteCodificacaoString(sJson, "WINDOWS-1252", sTeste);
Funcao fCarUni();
Inicio
TrocaString(aCarUni,"\\u00e1","á",aCarUni);
TrocaString(aCarUni,"\\u00e0","à",aCarUni);
TrocaString(aCarUni,"\\u00e2","â",aCarUni);
TrocaString(aCarUni,"\\u00e3","ã",aCarUni);
TrocaString(aCarUni,"\\u00e4","ä",aCarUni);
TrocaString(aCarUni,"\\u00c1","Á",aCarUni);
TrocaString(aCarUni,"\\u00c0","À",aCarUni);
TrocaString(aCarUni,"\\u00c2","Â",aCarUni);
TrocaString(aCarUni,"\\u00c3","Ã",aCarUni);
TrocaString(aCarUni,"\\u00c4","Ä",aCarUni);
TrocaString(aCarUni,"\\u00e9","é",aCarUni);
TrocaString(aCarUni,"\\u00e8","è",aCarUni);
TrocaString(aCarUni,"\\u00ea","ê",aCarUni);
TrocaString(aCarUni,"\\u00ea","ê",aCarUni);
TrocaString(aCarUni,"\\u00c9","É",aCarUni);
TrocaString(aCarUni,"\\u00c8","È",aCarUni);
TrocaString(aCarUni,"\\u00ca","Ê",aCarUni);
TrocaString(aCarUni,"\\u00cb","Ë",aCarUni);
TrocaString(aCarUni,"\\u00ed","í",aCarUni);
TrocaString(aCarUni,"\\u00ec","ì",aCarUni);
TrocaString(aCarUni,"\\u00ee","î",aCarUni);
TrocaString(aCarUni,"\\u00ef","ï",aCarUni);
TrocaString(aCarUni,"\\u00cd","Í",aCarUni);
TrocaString(aCarUni,"\\u00cc","Ì",aCarUni);
TrocaString(aCarUni,"\\u00ce","Î",aCarUni);
TrocaString(aCarUni,"\\u00cf","Ï",aCarUni);
TrocaString(aCarUni,"\\u00f3","ó",aCarUni);
TrocaString(aCarUni,"\\u00f2","ò",aCarUni);
TrocaString(aCarUni,"\\u00f4","ô",aCarUni);
TrocaString(aCarUni,"\\u00f5","õ",aCarUni);
TrocaString(aCarUni,"\\u00f6","ö",aCarUni);
TrocaString(aCarUni,"\\u00d3","Ó",aCarUni);
TrocaString(aCarUni,"\\u00d2","Ò",aCarUni);
TrocaString(aCarUni,"\\u00d4","Ô",aCarUni);
TrocaString(aCarUni,"\\u00d5","Õ",aCarUni);
TrocaString(aCarUni,"\\u00d6","Ö",aCarUni);
TrocaString(aCarUni,"\\u00fa","ú",aCarUni);
TrocaString(aCarUni,"\\u00f9","ù",aCarUni);
TrocaString(aCarUni,"\\u00fb","û",aCarUni);
TrocaString(aCarUni,"\\u00fc","ü",aCarUni);
TrocaString(aCarUni,"\\u00da","Ú",aCarUni);
TrocaString(aCarUni,"\\u00d9","Ù",aCarUni);
TrocaString(aCarUni,"\\u00db","Û",aCarUni);
TrocaString(aCarUni,"\\u00e7","ç",aCarUni);
TrocaString(aCarUni,"\\u00c7","Ç",aCarUni);
TrocaString(aCarUni,"\\u00f1","ñ",aCarUni);
TrocaString(aCarUni,"\\u00d1","Ñ",aCarUni);
TrocaString(aCarUni,"\\u0026","&",aCarUni);
TrocaString(aCarUni,"\\u0027","'",aCarUni);
TrocaString(aCarUni,"\\/","/",aCarUni);
Fim;