correios
correios copied to clipboard
fora do ar não exibe erro
Olá, hoje foi fazer o teste que sempre faço, colocando 1 produto no carrinho e faço simulado dos correios para ver se esta online correios. Simplesmente não exibe o erro (fora do ar) dos correios no simulado na pagina checkout, fica em branco, como não tivesse módulo instalado, mas esta instalado funcionando até sexta-feira, alguém já passou por isso, alguma dia?
O meu também não está retornando nenhum valor para os correios, mesmo o webservice estar funcionando normalmente, a minha página tbm fica em branco, alguém sabe o que está acontecendo com o módulo?
Também estou enfrentando o mesmo problema.
2019-05-06T14:19:16+00:00 DEBUG (7): pedroteixeira_correios: Warning! There is no valid quotes, and no one error was throwed:
(onde deveria aparecer o erro está em branco mesmo!)
Já testei a API dos correios e o XML retorna normalmente. Já reinstalei o módulo, já fiz o magento-cleanup e nada.
Bom dia Tenta trocar o webservice... http://ws.correios.com.br/calculador/CalcPrecoPrazo.aspx para http://ws.correios.com.br/calculador/CalcPrecoPrazo.asmx
Não sei se é exatamente o mesmo problema, mas aparentemente os correios modificaram o valor de retorno de erro. Onde antes voltava 0 caso não tivesse erros nos correios agora volta vazio e acredito que está bugando as validações.
if ($errorId != '0' && !in_array($errorId, $softErrors)) { continue; }
@rafaelpatro testei por aqui, não adiantou.
@rhandrade bem notado. Ignorei o código do erro e ele passou a mostrar o frete normalmente.
Fiz a alteração que o rafael sugeriu, mas estou recebendo a seguinte mensagem
DEBUG (7): pedroteixeira_correios [337]: URL Error - Unable to read response, or response is empty
Marcus Vinícius T. Sucupira
Em seg, 6 de mai de 2019 às 11:38, rhandrade [email protected] escreveu:
Não sei se é exatamente o mesmo problema, mas aparentemente os correios modificaram o valor de retorno de erro. Onde antes voltava 0 caso não tivesse erros nos correios agora volta vazio e acredito que está bugando as validações.
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/pedro-teixeira/correios/issues/424#issuecomment-489644885, or mute the thread https://github.com/notifications/unsubscribe-auth/AEMYKBJMMY3D3GAOC4FGOSLPUA7GBANCNFSM4HLAJAGA .
Não sei se é exatamente o mesmo problema, mas aparentemente os correios modificaram o valor de retorno de erro. Onde antes voltava 0 caso não tivesse erros nos correios agora volta vazio e acredito que está bugando as validações.
if ($errorId != '0' && !in_array($errorId, $softErrors)) { continue; }
Troquei na linha 191 do CorreiosMethod.php
if ($errorId != '' && !in_array($errorId, $softErrors)) { continue; }
Está funcionando novamente
Não sei se é exatamente o mesmo problema, mas aparentemente os correios modificaram o valor de retorno de erro. Onde antes voltava 0 caso não tivesse erros nos correios agora volta vazio e acredito que está bugando as validações.
if ($errorId != '0' && !in_array($errorId, $softErrors)) { continue; }
Troquei na linha 191 do CorreiosMethod.php
if ($errorId != '' && !in_array($errorId, $softErrors)) { continue; }
Está funcionando novamente
Fiz essa alteração e voltou a funcionar novamente, obrigado!!!!
Fiz esta alteração e está funcionando perfeitamente. Podemos deixar desse jeito ou será preciso alterar para algum código de erro futuramente?
Não sei se é exatamente o mesmo problema, mas aparentemente os correios modificaram o valor de retorno de erro. Onde antes voltava 0 caso não tivesse erros nos correios agora volta vazio e acredito que está bugando as validações.
if ($errorId != '0' && !in_array($errorId, $softErrors)) { continue; }
Aqui funcionou perfeitamente!
Valeu! Voltou a funcionar aq tb. Mas sugiro mais uma alteração pois, se voltar a retornar zero como antes, deixará de funcionar.
if (!empty($errorId) && !in_array($errorId, $softErrors)) {
...assim aceita os dois modos, eu acho
Valeu! Voltou a funcionar aq tb. Mas sugiro mais uma alteração pois, se voltar a retornar zero como antes, deixará de funcionar.
if (!empty($errorId) && !in_array($errorId, $softErrors)) {
...assim aceita os dois modos, eu acho
Isso .. melhor verificar com o empty mesmo, pois ele irá validar tanto o ""
quanto o "0"
como string vazia. Ai não ocorre mais problemas... O interessante seria depois mudar como ocorre o tratamento de erros, uma vez que a parte do array não funcionará mais.
O cliente que havia comunicado o erro inicialmente informou que voltou a não calcular o frete.
Ao verificar, parece que corrigiram nos Correios e estão retornando o erro "0" novamente.
Então, apliquei a recomendação do amigo @rafaelpatro e agora voltou a funcionar, evitando nova atualização caso decidam, por algum motivo, retirar o "0" novamente.
Muito obrigado @rafaelpatro e @rhandrade
O cliente que havia comunicado o erro inicialmente informou que voltou a não calcular o frete.
Ao verificar, parece que corrigiram nos Correios e estão retornando o erro "0" novamente.
Então, apliquei a recomendação do amigo @rafaelpatro e agora voltou a funcionar, evitando nova atualização caso decidam, por algum motivo, retirar o "0" novamente.
Muito obrigado @rafaelpatro e @rhandrade
Também fiz esse ajuste e está 100%. Realmente utilizando o empty vai resolver, independente do retorno.