rap-conector-client
v0.26.1
Published
Biblioteca desenvolvida para Node.Js para integração com a API do Conector RAP
Readme
rap-conector-client
Esse repositório contém o código fonte do cliente Node para o RAP Conector.
Sumário
Instalação
npm install rap-conector-clientTabela de Compatibilidade
A versão do cliente que deve ser utilizada depende da versão do RAP Conector a ser acessado. O esquema de versionamento segue o formato vX.Y.Z, onde:
- X.Y.Z é referente à versão do RAP Conector. Por exemplo, caso esteja utilizando o RAP Conector v0.26.0, X.Y.Z na versão do cliente deve ser 0.26.1.
- Obs.: Caso essa versão não exista no cliente, deve-se utilizar a versão anterior mais próxima.
Por exemplo:
| Versão do RAP Conector | Versão do cliente que deve ser utilizada | |------------------------|------------------------------------------| | v0.26.0 | v0.26.1 | | v0.25.0 | v0.25.0 | | v0.24.12 | v0.24.12 | | v0.24.9 | v0.24.9 | | v0.24.0 | v0.24.0 | | v0.23.0 | v0.23.0 | | v0.21.0 | v0.21.0 | | v0.20.0 | v0.20.0 | | v0.19.0 | v0.19.0 | | v0.18.0 | v0.18.0 | | v0.17.0 | v0.17.0 | | v0.16.0 | v0.16.0 | | v0.15.0 | v0.15.0 | | v0.14.1 | v0.14.1 | | v0.14.0 | v0.14.0 | | v0.13.0 | v0.13.0 | | v0.12.0 | v0.12.0 | | v0.11.3 | v0.11.3 | | v0.11.2 | v0.11.2 | | v0.11.1 | v0.11.1 |
Utilização
CommonJS
const ConectorClient = require('rap-conector-client');
const Conector = ConectorClient.Create({
url: 'myUrl',
client_id: 'aaaa-bbbb-cccc',
debug: true
});
Conector.healthCheck()
.then(console.log)
.catch((error)=>console.log(error));ES6
import { Create as ConectorClient } from 'rap-conector-client';
const Conector = ConectorClient({
url: 'myUrl',
client_id: 'aaaa-bbbb-cccc',
debug: true
});
Conector.healthCheck()
.then(console.log)
.catch((error)=>console.log(error));Tipos
É possível importar os tipos através do objecto TYPES
import { Create as ConectorClient, TYPES } from 'rap-conector-client';
console.log(TYPES.DocumentTypes) // GroupTypes, RevokeReason, etc.Conector externo
CommonJS
const ConectorClient = require('rap-conector-client');
const Conector = ConectorClient.CreateExternal({
url: 'myUrl',
client_id: 'aaaa-bbbb-cccc',
debug: true
});
Conector.healthCheck()
.then(console.log)
.catch((error)=>console.log(error));ES6
import { CreateExternal as ConectorClient } from 'rap-conector-client';
const Conector = ConectorClient({
url: 'myUrl',
client_id: 'aaaa-bbbb-cccc',
debug: true
});
Conector.healthCheck()
.then(console.log)
.catch((error)=>console.log(error));Exemplos
Autenticação
Utilizando promises
const ConectorClient = require('rap-conector-client');
const Conector = ConectorClient.Create({
url: 'http://localhost:8040',
client_id: 'aaa-bbb-ccc-ddd',
});
Conector.auth({
email: '[email protected]',
password: '123456'
}).then((userData) => {
console.log(userData); //accessToken, name...
Conector.getDocument({
docId: 5
})
.then(console.log)
.catch((error) => console.log(error));
})
.catch((error) => console.log(error));Utilizando async/await
const ConectorClient = require('rap-conector-client');
const Conector = ConectorClient.Create({
url: 'http://localhost:8040',
client_id: 'aaa-bbb-ccc-ddd',
});
async function myAsyncFunction(){
try{
// Se não deseja receber os dados de usuário basta retirar o const userData:
// Exemplo: await Conector.auth({email: "", password: ""})
const userData = await Conector.auth({
email: '[email protected]',
password: '123456'
})
console.log(userData);
const document = await Conector.getDocument({
docId: 5
});
console.log(document);
}catch(error){
console.log(error);
}
}
myAsyncFunction();Estados de retry
| processCode | Rota | Descrição | | ----------- | :--------------: | ------------------------------------------------------------------------------------------------------------------ | | 500 |restart-processing| Reinicia o processamento de um documento que ainda não esteja no estado de registro válido ou que esteja em erro. | | 501 |retry-generation | Tenta reexecutar o processo de geração do documento que ainda não esteja registrado ou em um estado de erro. | | 504 |retry-registration| Tenta reexecutar o processo de registro de um documento assinado que ainda não esteja registrado ou em erro. | | 505 |retry-registration| Tenta reexecutar o processo de registro de um documento assinado que ainda não esteja registrado ou em erro. | | 506 |retry-revocation | Tenta reexecutar o processo de revogação de um documento assinado que já esteja registrado ou em um estado de erro.| | 507 |retry-restamping | Tenta reexecutar o processo de recarimbamento de um documento assinado que já esteja registrado ou em erro. |
Tipos de retry signature
| type | Rota | Descrição | | -------------- | :----------------: | ------------------------------------------------------------------------------------------------------------- | | SIGNATURE | restry-signature | Tenta reexecutar o processamento da última assinatura do documento que ainda não esteja registrado ou em erro.| | SIGNATURES | restart-signatures | Tenta reexecutar todo processo de assinaturas do documento que ainda não esteja registrado ou em erro. |
Tratamento de erro
Utilizando promises
Conector
.getDocuments(options)
.then(console.log)
.catch((error)=>console.log(error));Utilizando async/await
try{
const documents = await Conector.getDocuments();
//do something
}catch(error){
console.log(error);
}Retorno
{error: true, message: "error message", code: "integer"}Códigos de erro
| Código | Descrição | | ------------- | :-------------: | | 400 | Credenciais de autenticação inválidas | | 401 | Credenciais de autenticação inválidas | | 404 | Objeto não encontrado no conector | | 422 | Não foi possível processar os dados da requisição | | 500 | Ocorreu um erro inesperado no servidor | | 501 | Erro na validação interna da client, por exemplo: docId não informado |
Licença
Licenciado sob a GNU LGPL-3.0-ou-posterior
Geração de Nova Versão
Passos para Gerar uma Nova Versão
1. Gerar o Build da Biblioteca
Execute o comando para gerar o build da biblioteca:
npm run dist2. Fazer um Commit com as Alterações
Após gerar o build, faça um commit informando as alterações. Utilize mensagens de commit descritivas, como:
git add .
git commit -m "feat: conector {version} compatibility"3. Gerar a Nova Documentação
Execute o comando para gerar a documentação estática:
npm run docs4. Atualizar a Versão da Biblioteca no README
Atualize a versão da biblioteca no README.md, substituindo as referências à versão antiga pela nova. Inclua quaisquer novas alterações ou documentações necessárias.
5. Criar uma nova Release
Para alterar a versão da biblioteca e fazer o commit das alterações de documentação, execute:
npm run release:minorIsso irá atualizar a versão e criar um commit com as mudanças.
6. Criar uma Tag para a nova Release
Crie uma tag associada ao último commit, usando o hash e o número da nova versão, execute:
git tag <nome-da-tag> <hash-do-commit>
git push origin <nome-da-tag>