Research
Security News
Kill Switch Hidden in npm Packages Typosquatting Chalk and Chokidar
Socket researchers found several malicious npm packages typosquatting Chalk and Chokidar, targeting Node.js developers with kill switches and data theft.
@nclabs/g5-senior-client
Advanced tools
Biblioteca auxiliar para requisições aos webservices da Senior Sistemas (G5).
Biblioteca auxiliar para requisições aos webservices da Senior Sistemas (G5).
npm i @nclabs/g5-senior-client
Assinatura | Parâmetros (types) | Descrição |
---|---|---|
registry(g5Registry: G5Registry) | G5Registry | Atribui as credenciais e url base que serão usadas nas requisições ao G5 |
config(config: G5Config) | G5Config | Configura o acesso ao G5 |
request(request: G5Request, credential?: G5Credential) | G5Request, G5Credential | Retorna um Observable da requisição ao webservice e executa quando subscrito. Quando informadas as credenciais no método, desconsidera o registro para a requisição e utiliza as credenciais informadas. |
asyncRequest(request: G5Request, credential?: G5Credential) | G5Request, G5Credential | Retorna uma Promise da requisição ao webservice. Quando informadas as credenciais no método, desconsidera o registro para a requisição e utiliza as credenciais informadas. |
/**
* Credenciais para acesso dos webservices da G5
*
*/
G5Credential = {
/**
* Usuário do G5.
*/
username: string;
/**
* Senha do usuário na G5 ou token encriptado conforme Logon integrado com criptografia
*/
password: string;
/**
* Tipo de encriptação da senha do usuário:
*
* > 0 - sem encriptação (string com a senha do usuário) (default)
*
* > 2 - autenticação com token com criptografia
*
*/
encryption?: number;
}
G5Config = {
/**
*
* URL base para as requisições (sem o nome do serviço).
*
* Ex.: http://servidor:1234/g5-senior-services/
*
* Opcionalmente o wsdl completo pode ser enviado em cada requisição.
*
*/
baseUrl: string;
}
/**
* Requisição para os webservices da G5
*
*/
G5Request<DATA> = {
/**
* Nome do módulo do webservice G5. Não utilizado quando informado o wsdl.
*/
module: string;
/**
* Nome do webservice G5. Não utilizado quando informado o wsdl.
*
* Pode receber o nome do serviço com "." ou "_".
*
* > Ex.: `com.senior.cad...` e `com_senior_cad...` são equivalentes.
*/
webservice: string;
/**
* Nome da porta do webservice no G5
*/
port: string;
/**
* Parâmetros de execuçaõ do webservice.
*/
parameters: DATA;
/**
* Endereço completo do wsdl do serviço, exatamente como definido na documentação do G5 Senior.
*
* > Quando informado, sobrepoe os demas parâmetros
*/
wsdl?: string;
}
/**
* Registro
*
*/
G5Registry = {
credential: G5Credential
baseUrl?: string;
}
/**
* Registro
*
*/
G5ClientException = {
code: number;
type: string;
message: string;
error?: string | object | unknown;
}
Registra as credenciais que serão utilizadas nas requisições.
Opcionalmente, as credenciais podem ser enviadas diretamente na requisição.
import { G5Credential, G5SeniorClient } from "g5-senior-client";
/**
* Credential
*/
const credential: G5Credential = {
username: "userName",
password: "my-pass",
encryption: 0
}
G5SeniorClient.registry({ credential });
Permite definir a URL base para as requisições.
Ex.: http://servidor:1234/g5-senior-services/
Opcionalmente o wsdl completo pode ser enviado em cada requisição no atributo wsdl, omitindo o service.
import { G5Config, G5SeniorClient } from "g5-senior-client";
/**
* Base URL
*/
const config: G5Config = {
baseUrl: "http://servidor:1234/g5-senior-services/"
}
G5SeniorClient.config(config);
O atributo service pode receber o nome do serviço com "." ou "_". Ex.: com.senior.cad...
e com_senior_cad...
são equivalentes.
Opcionalmente pode-se enviar o wsdl completo (exatamente como indicado na documentação Senior), nesse caso o atributo service é desconsiderado. Exemplo no item Requisição sem registro prévio
import { G5Request } from "g5-senior-client";
/**
* Request Params
*/
const request: G5Request = {
module: "rubi",
service: "com.senior...",
port: "Gravar...",
parameters: {
codEmp: "1",
codFil: "1",
others: "...."
},
};
import { G5SeniorClient } from "g5-senior-client";
/**
* Request
*/
G5SeniorClient.request(request).subscribe({
// Handle Response
next: (res: any) => console.log(res),
// Handle Error
error: (err: any) => console.log(err),
});
import { G5SeniorClient } from "g5-senior-client";
/**
* Async Request
*/
G5SeniorClient.asyncRequest(request).then((res: any) => {
// Handle Response
console.log(res);
}).catch((err: any) =>
// Handle Error
console.log(err)
)
FAQs
Biblioteca auxiliar para requisições aos webservices da Senior Sistemas (G5).
The npm package @nclabs/g5-senior-client receives a total of 22 weekly downloads. As such, @nclabs/g5-senior-client popularity was classified as not popular.
We found that @nclabs/g5-senior-client demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
Socket researchers found several malicious npm packages typosquatting Chalk and Chokidar, targeting Node.js developers with kill switches and data theft.
Security News
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.
Product
Socket now supports uv.lock files to ensure consistent, secure dependency resolution for Python projects and enhance supply chain security.