SysFileZillaServerAPI é uma API, que roda em Nodejs e permite gerenciar o Filezilla Server utilizando o repositório CtrlFileZillaServer
O Diretório do Filezilla Server padrão é C:\Program Files (x86)\FileZilla Server\ porém pode ser alterado na variável cfg_pathfilezilla
A aplicação roda na porta 9092 porém pode ser alterado na variável cfg_porta
O acesso a api é feito utilizando autenticação básica HTTP (Basic Auth), e os usuários/senha são controlados na variável cfg_usuarios
Toda chamada a API é feita via POST enviando no corpo da solicitação o JSON com os parâmetros
Em caso de sucesso, será retornado um json com dois valores:
- httpcode: 200
- body: Json com o resultado da requisição
Exemplo:
{
"httpcode": 200,
"body":{
}
}
Em alguns métodos não é retornado o body, são métodos que apenas retornam o httpcode: 200 para indicar o SUCESSO da requisição
Em caso de erro, será retornado um json com dois valores:
- httpcode: 500
- body/Msg: Mensagem de erro
Exemplo:
{
"httpcode": 500,
"body":{
"Msg": "Alguns dados nao foram preenchidos"
}
}
Para o funcionamento deste método é necessário a dependência do pacote CtrlFileZillaServer:
Método: contas_listar
Exemplo:
null
Retorno:
{
"httpcode": 200,
"body": [
{
"Nome": "teste1",
"Diretorio": "C:\\",
"Permissoes": {
"FileRead": true,
"FileWrite": true,
"FileDelete": true,
"DirCreate": true,
"DirDelete": true,
"DirList": true,
"DirSubdirs": true
}
}
]
}
Método: contas_criar
Exemplo:
{
"Conta": "testeabc",
"Senha": "aaabbb",
"Diretorio": "C:\\PastaTeste1",
"Permissoes": {
"FileRead": true,
"FileWrite": true,
"FileDelete": true,
"DirCreate": true,
"DirDelete": true,
"DirList": true,
"DirSubdirs": true
}
}
Retorno:
{
"httpcode": 200
}
Método: contas_existe
Exemplo:
{
"Conta": "testeabc"
}
Retorno:
{
"httpcode": 200,
"body": true
}
Detalhes: Em body será retornado um boolean:
- true: A conta existe
- falae: A conta não existe
Método: contas_deletar
Exemplo:
{
"Conta": "testeabc"
}
Retorno:
{
"httpcode": 200
}
Método: contas_alterar
Exemplo:
{
"Conta": "testeabc",
"Senha": "aaabbb",
"Diretorio": "C:\\PastaTeste1",
"Permissoes": {
"FileRead": true,
"FileWrite": true,
"FileDelete": true,
"DirCreate": true,
"DirDelete": true,
"DirList": true,
"DirSubdirs": true
}
}
Retorno:
{
"httpcode": 200
}
Método: contas_alterar_senha
Exemplo:
{
"Conta": "testeabc",
"Senha": "aaabbb"
}
Retorno:
{
"httpcode": 200
}
Método: contas_alterar_diretorio
Exemplo:
{
"Conta": "testeabc",
"Diretorio": "C:\\PastaTeste1"
}
Retorno:
{
"httpcode": 200
}
Método: contas_alterar_permissoes
Exemplo:
{
"Conta": "testeabc",
"Permissoes": {
"FileRead": true,
"FileWrite": true,
"FileDelete": true,
"DirCreate": true,
"DirDelete": true,
"DirList": true,
"DirSubdirs": true
}
}
Retorno:
{
"httpcode": 200
}
O nó de permissões possui as permissões abaixo:
- FileRead: Ler Arquivos
- FileWrite: Criar/Editar Arquivos
- FileDelete: Deletar Arquivos
- DirCreate: Criar Diretório
- DirDelete: Deletar Diretório
- DirList: Listar Diretórios
- DirSubdirs: Exibir Sub Diretórios
Os valores das variaveis é sempre um boolean, onde:
- true: Tem permissão
- false: Não tem permissão
Paloma Macetko