Closed medeirosrafael closed 6 years ago
Boa noite amigo! =D
A verdade é que a lib começou com a ideia de resolver o problema no back-end, com Node, e com o tempo a gnt foi progredindo ela até chegar no front com o cliente web, o problema é que o service dos correios realmente não aceita requisições no browser, devido a política de CORS adotada.
Como fica explicito aqui.
Pra contornar esse problema uma boa solução seria criar um nano serviço que apenas resolvesse ceps, daí vc nunca mais teria problemas de CORS. 🤔
Por exemplo, criar uma função no webtask.io que resolva os ceps.
Vou criar uma função de exemplo aqui pra caso vc queira ter uma guia..
(Caso vc tenha alguma ideia de como resolver esse problema ao nível de lib, nós ficaremos muito felizes em discutir isso e melhorar o cep-promise
URL: https://wt-1e0e66e290be8bceb5902198c7a1999a-0.run.webtask.io/cep-promise/29065250
Code:
var express = require('express');
var Webtask = require('webtask-tools');
var bodyParser = require('body-parser');
var app = express();
const cep = require('cep-promise')
app.use(bodyParser.json());
app.get('/:cep', function (req, res) {
if (req.params.cep) {
return cep(req.params.cep)
.then(response => res.json(response))
.catch(e => res.send(500, e))
} else {
res.send(500, 'No cep provided')
}
});
module.exports = Webtask.fromExpress(app);
@lucianopf, boa noite. Obrigado pelas explicações detalhadas e exemplos. Entendi a questão, como era algo meio urgente, eu acabei solucionando fazendo um "fallback" na mão, quando a requisição retorna erro do viacep, faço uma consulta para o meu servidor, que por sua vez vai faz a requisição para os correios. Não é excelente, mas, me atendeu. Minha necessidade era exclusivamente para front-end. Mais uma vez, obrigado pela atenção.
Precisamos de mais providers de cep :)
2017-10-03 22:35 GMT-03:00 medeirosrafael notifications@github.com:
@lucianopf https://github.com/lucianopf, boa noite. Obrigado pelas explicações detalhadas e exemplos. Entendi a questão, como era algo meio urgente, eu acabei solucionando fazendo um "fallback" na mão, quando a requisição retorna erro do viacep, faço uma consulta para o meu servidor, que por sua vez vai faz a requisição para os correios. Não é excelente, mas, me atendeu. Minha necessidade era exclusivamente para front-end. Mais uma vez, obrigado pela atenção.
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/filipedeschamps/cep-promise/issues/94#issuecomment-334026659, or mute the thread https://github.com/notifications/unsubscribe-auth/AEDSEUfiW_AMJLVO-wvH-hR52DGxsGwpks5souDqgaJpZM4Pq_vD .
Uso bastante o postmon.
Interessante hein @alexandremaeda !!
Não parei de ver a fonte deles. É a mesma que vocês então...
Marromens, eles usam o cep tbm, mas de outra maneira (que talvez tenha cors: *
) e usam outro que a gnt não usa.
Acho válido adicionar como service pra testar, o que acha @filipedeschamps ? 🤔
Ah que massa!
Eu integraria eles com certeza, ainda mais por utilizarem a outra abordagem de consultar o site mobile dos correios, é um bom fallback :)
On Wed, Oct 4, 2017 at 2:06 PM, Luciano Pellacani Franca < notifications@github.com> wrote:
Marromens, eles usam o cep tbm, mas de outra maneira (que talvez tenha cors: *) e usam outro que a gnt não usa.
Acho válido adicionar como service pra testar, o que acha @filipedeschamps https://github.com/filipedeschamps ? 🤔
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/filipedeschamps/cep-promise/issues/94#issuecomment-334223592, or mute the thread https://github.com/notifications/unsubscribe-auth/AEDSEb79w1n25Pnut0ImywwkCxZmgLEkks5so7sKgaJpZM4Pq_vD .
🤕
Pq diabos a galera não mete um *
hein?!
Que acham de implementar o cepaberto.com ? A única diferença da requisição do ViaCEP é o token de autorização.
Curti hein mano! =D
Me parece bem simples de usar!
curl http://www.cepaberto.com/api/v2/ceps.json?cep=40010000 -H \
'Authorization: Token token="37bfda18fd4b423cdb6748d14ba30aa6"'
Suporte ao Cep Aberto
adicionado pelo @lucianopf na versão 2.0.6
👍 👍 👍 👍 👍 👍 👍
Boa tarde. Hoje o viacep estava fora do ar, e acabei encontrando esse projeto. Gostei bastante da ideia. Meu projeto é em Angular2.
O problema é que toda requisição feita para os correios dá erro. Mesmo retornando dados (possível de ser visualizado no dev-tools). Aparentemente, o problema é que a requisição fetch feita com "mode: no-cors", retorna uma resposta com ok = false e type = opaque, sem header, sem body, sem nada..
O que eu posso fazer para resolver isso?