Validação de dados via API usando HTTPS (importante se você estiver usando SSL). Ao invés de você inserir 2 libs pra verificar, você pode fazer um requisição a API. :)
Escrevi isto pra ser open-source! Se você tem novas ideias de validações (ou até uma lib JS mínima que faça esses checks - ops!), abra um issue/envie um pull request! Só tenha certeza de que os testes passem (o que significa que você tem que escrever se implementar algo).
Sinta-se livre para fazer o que quiser com o projeto.
O que eu utilizei pra fazer a API? A lista do que você vai precisar pra rodar é a seguinte:
Se você NÃO conhece ruby nem rails
Se você já conhece Ruby on Rails:
Após instalar Ruby & GIT
git clone git://github.com/runeroniek/brazil-api
e entre no diretório /brazil-apigem install sinatra
)bundle install
shotgun api.rb
http://localhost:9393
)Para adicionar novas validações
spec/
, seguindo o seguinte padrão: validator_SUAVALIDACAO_spec.rb
rspec spec
.lib/validators/SUAVALIDACAO.rb
lib/validator.rb
( algo como require 'validators/SUAVALIDACAO'
)def as_json
, siga os exemplos dos outros validadores.lib/response.rb
, seguindo o mesmo formato.http://localhost:9393/?validacao=SUA_VALIDACAO
.Obs.: Substitua XXX pelo valor que quiser checar
Busca por CEP
Exemplo: Requisição GET para https://brazilapi.herokuapp.com/api?cep=XXX
A resposta será um JSON se o CEP for válido e existir (no caso abaixo, utilizei o CEP 78132-500
:
[{
"cep":
{
"valid":true,
"result":true,
"data":
{
"id": "4785",
"cidade": "Várzea Grande",
"logradouro": "Nove",
"bairro": "Cohab Sete de Maio",
"cep": "78132-500",
"tp_logradouro": "Rua",
"cidade_sem_acento": "varzea grande",
"uf": "mt"
},
"message":""
}
}]
Validação de CPF
Exemplo: Requisição GET para https://brazilapi.herokuapp.com/api?cpf=XXX
A resposta será um JSON:
[{
"cpf":
{
"valid": true,
"value": "11111111111"
}
}]
Validação de Email
Exemplo: Requisição GET para https://brazilapi.herokuapp.com/api?email=XXX
A resposta será um JSON:
[{
"email":
{
"valid": true,
"value": "[email protected]"
}
}]
Verificar todos os anteriores Exemplo: Você pode usar todos os anteriores se quiser validar tudo de uma vez: Requisição GET para ```https://brazilapi.herokuapp.com/api?email=XXXX&cep=XXX&cpf=XXX`
A resposta será um JSON com a união de todos os anteriores:
[
{
"email":
{
"valid": true,
"value":"[email protected]"
}
},
{
"cep":
{
"valid": true,
"result": true,
"data":
{
"DADOS DO CEP"
}
}
},
{
"cpf":
{
"valid": true,
"value": "11111111111"
}
}]