Calculator rest API
Uma API que retorna resultados de operações matemáticas;
As operações são dadas na url no seguinte formato:
domain.com/{operação}/{primeiro_valor}/{segundo_valor}
e elas são:
A soma pode ser acionada pelas seguintes strings:
+
soma
plus
add
-
sub
menos
minus
less
*
x
mul
mult
times
:
div
take
split
√
root
raiz
^
exp
elev
url = https://calculation-api.herokuapp.com/+/2/3
{
"result": 5
}
url = https://calculation-api.herokuapp.com/:/52.33/7.5
{
"result": 6.977333333333333
}
url = https://calculation-api.herokuapp.com/√/27/3
{
"result": 3
}
Caso um dos valores obter um valor acima de 16 algarismos, a API irá arredondar-lo.
Se realmente for necessário obter um valor mais apurado, insira a rota long/
no início da URI
url = https://calculation-api.herokuapp.com/long/:/29289984423798437.04383428093/942303293099948028324932.290044
{
"wrn": "The result is a string. You shold parse it.",
"result": "3.108339389056e-8"3.5.2
}
Se não se importar com o arredondamento, você pode mandar os valores longos, porém a api vai retornar um warning sobre a situação.
url = https://calculation-api.herokuapp.com/:/29289984423798437.04383428093/942303293099948028324932.290044
{
"wrn": "Params given are too high, the result is not going to be too accurate",
"result": 3.1083393890561e-8
}
Caso um dos valores dados começar com um caractere não numérico, a API vai retornar um error. Isso conta para a long/
também.
url = https://calculation-api.herokuapp.com/times/qiA7299/22
{
"err": "Params given are not number type."
}
Mas, se começar com um número, a API só processará ele até encontrar um não número.
url = https://calculation-api.herokuapp.com/plus/9d333/11pp22
{
"result": 20
}
Baixe o projeto com
git clone https://github.com/wilkerHop/calcAPI.git
Você vai precisar do Nodejs v6.11.4^ e do npm v3.5.2^ para rodar a API. Depois de instalados, dentro da pasta do projeto escreva
npm install
Pronto!
Você agora tem a API instalada no seu PC. Agora, um
npm start
ou
node app
e ela está rodando no seu localhost na porta 3000 ou na sua plataforma as-a-service, como o Heroku, já setada para a porta padrão.
long/
pode suportar;long/{calc}
;