Ir para conteúdo
Gabrielvt14

Mostrar resultado JSON via Ajax

Recommended Posts

Olá pessoal. Não tenho muito conhecimento em javascript, mas preciso fazer a integração de uma API de pagamento.

 

Nunca realizei integrações com alguma API antes.

 

Seguindo a documentação vi que precisa primeiro gerar um token de transação.

 

Então tenho esse código:

function GeraToken() {
        var base64 = $.encodeBASE64(AppKey:CHAVE, Signature:ASSINATURA);

    $.ajax({
        url: "http://desenvolvimento.intermeio.com/api/v2_1/Token/Gerar",
        headers: { "Authorization": "Intermeio " + base64, Content-Type: application/json },
        type: "POST",
        crossDomain: true,
        dataType: "json",

        success: function () {
            alert('FOI');
        },
        error: function (xhr, status) {
            alert('NAO FOI');
        }
    });
}

Onde a funcao GeraToken() é um botão que chama.

 

Mas eu queria ter a certeza que esta correta a chamada.

Quando clico no botão ele nao me retorna nenhum dos dois alerts. O mais ideal seria me retornar na tela mesmo o token, só pra eu ver mesmo que funcionou, porque eu preciso armazenar esse token  na base de dados.

Na API diz que o retorno será em JSON.

 

Alguém poderia me ajudar?

 

Grato desde ja!

Compartilhar este post


Link para o post
Compartilhar em outros sites

o que aparece no console do browser?

 

ctrl + shift + j ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa tarde William, obrigado pelo retorno.

 

No console aparece a mensagem:

 

Uncaught ReferenceError: GeraToken is not defined
    at HTMLAnchorElement.onclick

 

 

O estranho é que se eu apagar tudo da função GeraToken() e deixar só um alert() dentro dela, somente para ver se entra na função. Aí o alert() é executado.

Mas se eu colocar o código ajax ele da esse erro no console

Compartilhar este post


Link para o post
Compartilhar em outros sites

tem erro de sintaxe na tua função:

function GeraToken() {
    var base64 = $.encodeBASE64({AppKey:'', Signature:''});
    $.ajax({
        url: "http://desenvolvimento.intermeio.com/api/v2_1/Token/Gerar",
        headers: { "Authorization": "Intermeio " + base64, 'Content-Type': 'application/json' },
        type: "POST",
        crossDomain: true,
        dataType: "json",
        success: function () {
            alert('FOI');
        },
        error: function (xhr, status) {
            alert('NAO FOI');
        }
    });
}

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim, ontem a noite resolvi isso também.

O problema estava nisso e também no encode, a função não estava encodando em base64, dai usei outra função e resolveu.

 

Agora ele faz comunicação com a API, mas ele retorna error.

O estranho é que faço teste no REST client usando as mesmas credenciais do código e me retorna código 200

 

 

Acha que pode ser algum problema da API?

 

No REST client estou usando assim:

 

Content-Type: application/json
Authorization: Intermeio BASE64
crossDomain: true,
dataType: "json"

 

No Authorization esta tudo sem aspas, no REST client se eu colocar as aspas no Authorization, ele retorna erro, mas no código se eu deixar o Authorization sem aspas ele retorna erro :sweat_smile:

Compartilhar este post


Link para o post
Compartilhar em outros sites

qual o erro que está dando? e como ficou o código?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Quando passo no REST client com as aspas no Authorization ele retorna esse erro:

400 BAD REQUEST
{
"IpRequisitante": null,
"Codigo": 700,
"Titulo": "Dados inválidos",
"Descricao": null
}
 
E o código passado no REST cliente:
url: http://desenvolvimento.intermeio.com/api/v2_1/Token/Gerar
Content-Type: application/json
Authorization: "Intermeio BASE64"
crossDomain: true,
dataType: "json"

 

 
E sem as aspas no Authorization ele retorna 200 e o JSON esperado.
 
E no código ficou assim:
$.ajax({  
            url: "http://desenvolvimento.intermeio.com/api/v2_1/Token/Gerar",
            headers: {"Authorization": "Intermeio "  + base64, 'Content-Type': 'application/json'},
            type: "POST",
            crossDomain: true,
            dataType: "json",

            success: function () {
                alert('FOI');
            },
            error: function (xhr, status) {
                alert('NAO FOI');
            }
        });

 Ai ele entra no alert('NAO FOI');

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por Kelven
      Galera to enfrentando um problema, no meu tumblr to querendo colocar o popup de newsletter do Mailchimp, até ai tudo bem, é pra funcionar que nem no script abaixo, porém esse script só funciona se eu excluir aquela parte que está marcada, porém se eu excluir ela o tema do tumblr não funciona como deveria em celulares. Alguém sabe me dizer que tipo de conflito é esse e como posso resolver???
      <script type='text/javascript' src='http://space.fitterbiz.com/wp-includes/js/wp-embed.min.js?ver=4.9.10'></script> <script type="text/javascript" src="//downloads.mailchimp.com/js/signup-forms/popup/embed.js" data-dojo-config="usePlainJson: true, isDebug: false"></script> <script> function showMailingPopUp() { require( ["mojo/signup-forms/Loader"], function(L) { L.start({"baseUrl":"mc.us14.list-manage.com","uuid":"7f359a9e538573b27c9e39820","lid":"e64535f817"}) } ); document.cookie = 'MCPopupClosed=;path=/;expires=Thu, 01 Jan 1970 00:00:00 UTC;'; document.cookie = 'MCPopupSubscribed=;path=/;expires=Thu, 01 Jan 1970 00:00:00 UTC;'; } document.getElementById("open-popup").onclick = function() {showMailingPopUp()}; </script> <a onclick="showMailingPopUp(); return false;" id="open-popup" style="cursor:pointer">Subscribe!</a> <!-- quando coloco isso não funciona --> <script src="https://static.tumblr.com/xlsgtjb/mt5o305mz/scripts.min.js" charset="UTF-8"></script> <!-- quando coloco isso não funciona -->
    • Por Kelven
      Olá pessoal tudo bem?
       
      Então eu quero colocar um formulário de newsletter em um servidor q não tem suporte para php, o negócio é q depois que a pessoa clica em se cadastrar eu quero que ela seja redirecionada para outro site, então gostaria de saber como posso estar fazendo isso usando apenas javascript, jquery ou ajax com o API do Mailchimp? Porque já procurei muito e não achei, só achei em php.
    • Por reginaldo123
      estou com dificuldade em criar uma url pernalizada exemplo
       
      href="www.bolacha,.com/novabolacha"
      value= "www.bolacha.com"
       
      quando o usuario copia a url para colocar em outra pagina quero que apareça o conteudo de value, e seja direcionado para o href.
       
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.