Closed ghost closed 5 years ago
Estou com problemas também, no meu não abilita o combobox de parcela, mais alguém com problema?
Att,
Moises
Em qua, 22 de mai de 2019 às 11:10, Gustavo Bernardi < notifications@github.com> escreveu:
Bom dia! Ao tentar tentar fazer uma requisição no módulo está retornando o seguinte erro. Não é apenas uma loja, são várias. Erro começou hoje.
Access to XMLHttpRequest at ' https://ws.pagseguro.uol.com.br/v2/installments.json?sessionId=45412f528fc54a7c90ab328d7250b61c&amount=99.06&creditCardBrand=mastercard' from origin 'https://pagseguro.uol.com.br' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.
[image: pagseguro] https://user-images.githubusercontent.com/28944628/58181100-8bd30a80-7c81-11e9-8659-4a06fad05114.png
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/r-martins/PagSeguro-Magento-Transparente/issues/259?email_source=notifications&email_token=AB2V7T5JBFPFGQKDUWOQVJTPWVH3VA5CNFSM4HOUXCWKYY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4GVHD7KA, or mute the thread https://github.com/notifications/unsubscribe-auth/AB2V7TZ2LBEFVJRDWIDDFCDPWVH3VANCNFSM4HOUXCWA .
Estou tendo exatamente o mesmo problema fazendo com que as opções de parcela não apareçam.
Conseguimos resolver esse problema editando o arquivo:
app/code/community/RicardoMartins/PagSeguro/controllers/AjaxController.php
Encontre o método getGrandTotalAction() e adicione a seguinte linha:
$this->getResponse()->setHeader('Access-Control-Allow-Origin', 'https://pagseguro.uol.com.br');
Ficando assim:
public function getGrandTotalAction()
{
/** @var Mage_Sales_Model_Quote $quote */
$quote = Mage::helper('checkout/cart')->getQuote();
$quote->getPayment()->setMethod('rm_pagseguro_cc');
$quote->collectTotals();
$total = $quote->getGrandTotal();
$this->getResponse()->setHeader('Content-type', 'application/json', true);
$this->getResponse()->setHeader('Access-Control-Allow-Origin', 'https://pagseguro.uol.com.br');
$this->getResponse()->setBody(json_encode(array('total'=>$total)));
}
Senhores, como podemos ver na imagem do @guh9rX, o erro de CORS se dá em uma requisição entre os domínios do próprio PagSeguro e não no getGrandTotal.
Em conversa recente com o PagSeguro soube que há uma instabilidade no serviço que busca as parcelas. A sugestão recomendada é que eu trouxesse o valor a vista sempre carregado no dropdown, de forma que, caso o getInstallments falhe, o usuário ainda poderá concluir o pedido a vista. Estou trabalhando nisso.
Como não encontrei uma forma de simular o serviço de parcelas fora do ar, o que fiz foi usar o evento "error" da própria chamada para tratar esse assunto. Caso vocês experienciem um caso de problemas nas parcelas, por favor reabram esse ticket com prints de qual request ao pagseguro falhou (de preferencia na aba Network). Qualquer outra informação que ajude a pegar o momento que "deu pau" é bem-vinda para que eu possa endereçar a correção com outra abordagem. Valeu! :)
As requisições nao podem ser feitas diretamente no front end, voce deve fazer via backend..
@carlosalbertocruz pode ser mais específico? Se possível, entre em contato comigo.
Bom dia! Ao tentar tentar fazer uma requisição no módulo está retornando o seguinte erro. Não é apenas uma loja, são várias. Erro começou hoje.
Access to XMLHttpRequest at 'https://ws.pagseguro.uol.com.br/v2/installments.json?sessionId=45412f528fc54a7c90ab328d7250b61c&amount=99.06&creditCardBrand=mastercard' from origin 'https://pagseguro.uol.com.br' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.