Search the Community

Showing results for tags 'auth'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Português
    • Autenticação e Autorização
    • Gerenciamento de perguntas e respostas
    • Gerenciamento de produtos
    • Gerenciamento de vendas
    • Gerenciamento de envios
    • Gerenciamento de usuário
    • Controle de notificações
    • Gerenciamento de mensagens pós-venda
  • Español
    • Autenticación y Autorización
    • Gestión de preguntas y respuestas
    • Gestión de productos
    • Gestión de ventas
    • Gestión de envíos
    • Gestión de usuario
    • Control de notificaciones
    • Gestión de mensajes post-venta
  • English
    • Authentication and Authorization
    • Question & Answer Management
    • Product Management
    • Sales Management
    • Shipment Management
    • User Management
    • Notification control
    • Post Sale Message Management
  • Off Topic
    • Events
    • Off Topic
    • Documentation improvements
    • Jobs

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


AIM


MSN


Website URL


ICQ


Yahoo


Jabber


Skype


Location


Interests

Found 5 results

  1. Olá, estou desenvolvendo uma aplicação simples que será 99% em JavaScript, como a SDK JS do ML está descontinuada a uns anos, somente a parte de autenticação fiz em PHP. Pretendo fazer a aplicação toda em JS para não consumir recursos do servidor, no primeiro acesso o app requisita o Aceess Token do servidor e armazena ele localmente, daí então todas as requisições que serão feitas à API do ML será feita via Ajax. O problema está sendo em como o Javascript vai requisitar o Access Token ao meu PHP do usuário em específico que estará acessando, no meu protótipo eu armazenei numa variável minha ID do ML, então passo esta ID para o servidor para requisitar o token: //requisita o access_token var user_id = '0000'; //Minha ID do ML var expires_in = GM_getValue('expires_in'); var agora = Math.round(new Date().getTime()/1000); if (expires_in < agora || !expires_in){ $.getJSON("https://meusite.com/renew_token.php?user_id=" + user_id, function(retorno){ //se recebeu o token, grava ele if (retorno.access_token){ GM_setValue('access_token', retorno.access_token); GM_setValue('expires_in', retorno.expires_in); } //se não existir o token provavelmente o usuario nunca se autenticou, então abre a janela para autorizar o app else{ window.open("https://meusite.com/login.php","janela1","width=600, height=600, directories=no, location=no, menubar=no, scrollbars=no, status=no, toolbar=no, resizable=no"); } }); } //requisita o access_token Assim está funcionando normalmente, mas não consegui pensar numa maneira de como o JS pode "pedir" um novo token ao PHP sem eu identificar de que usuário se trata. Se eu acessar diretamente o https://..../login.php ele me retorna o Token correto pois a SDK reconhece o usuário autenticado no navegador, porém também não consegui fazer este retorno "voltar" para o JavaScript.
  2. Si ya tengo el ID de mi applicacion con su token y secret puedo implimentar para que usarios de differente paises con su cuenta ml puedan ser autentificados en mi aplicacion? Pregunto, porque al momento de crear mi cuenta y aplicacion me pregunta de que pais es... entonces no estoy seguro si el token y secret funciona solo para usuarios que quiere autentificarse conmigo solo de ese pais... Me explico?
  3. Olá pessoal, bom primeiramente deixa eu dizer que meu conhecimento em PHP é bem básico, por isso meu aplicativo é uma enorme POG. Estou aprendendo com a necessidade. Eu tenho um aplicativo em javascript (um complemento do Chrome) para pegar o código de rastreamento das vendas e cadastrar num serviço de rastreamento, a aplicação não "trabalha sozinha", eu abro os detalhes de cada venda e o Javascript pega o ID da venda e faz um request no meu PHP que por sua vez captura as informações da venda na API no ML. A rotina no JS primeiro verifica se o pacote já foi adicionado, se já tiver sido nem continua a execução pois não precisa (quando ele executa armazena uma variável local no navegador para posterior checagem). Então supondo que o pacote ainda não foi adicionado, o JS faz uma requisição com Ajax no PHP hospedado no meu servidor que tenta capturar o tracking_number na API, se não tiver esta informação geralmente é porque meu acesso expirou então ele abre uma janela chamando o PHP que me autentica na aplicação, e em seguida tenta novamente obter o tracking_number. Blz funciona, só que toda vez (se passar de 6 horas) ele não consegue obter o rastreamento e abre a janela para me re-autenticar. Gostaria de uma ajuda de como usar o refresh_token para o próprio servidor requisitar o novo access_token sem a necessidade desse vai-e-vem que eu estou fazendo. Este é o PHP que faz a autenticação e grava o acess_token num TXT que é lido pelo outro PHP que tenta obter o tracking_number: <?php session_start('Login'); require 'meli.php'; $meli = new Meli('1234567890', 'abcdefg', $_SESSION['access_token'], $_SESSION['refresh_token']); if($_GET['code'] || $_SESSION['access_token']) { // If code exist and session is empty if($_GET['code'] && !($_SESSION['access_token'])) { // If the code was in get parameter we authorize $user = $meli->authorize($_GET['code'], 'https://www.meusite.com/index.php'); // Now we create the sessions with the authenticated user $_SESSION['access_token'] = $user['body']->access_token; $_SESSION['expires_in'] = time() + $user['body']->expires_in; $_SESSION['refresh_token'] = $user['body']->refresh_token; } else { // We can check if the access token in invalid checking the time if($_SESSION['expires_in'] < time()) { try { // Make the refresh proccess $refresh = $meli->refreshAccessToken(); // Now we create the sessions with the new parameters $_SESSION['access_token'] = $refresh['body']->access_token; $_SESSION['expires_in'] = time() + $refresh['body']->expires_in; $_SESSION['refresh_token'] = $refresh['body']->refresh_token; } catch (Exception $e) { echo "Exception: ", $e->getMessage(), "\n"; } } } //armazena dados da sessão unlink("token.txt"); //primeiro apaga o arquivo $fp = fopen("token.txt", 'a'); fwrite($fp, $_SESSION['access_token']); fclose($fp); //grava nome do usuario date_default_timezone_set('America/Sao_Paulo'); $datahora = date("d/m/y - G:i"); $params = array('access_token' => $_SESSION['access_token']); $userinfo = "/users/me"; $user_info = $meli->get($userinfo, $params); $username = $user_info['body']->nickname; $email = $user_info['body']->email; $fp = fopen("users.html", 'a'); fwrite($fp, "<p>" .$datahora. " - " .$username. " - " .$email. "</p>\n"); fclose($fp); //exibe informações da sessão echo '<pre>'; print_r($_SESSION); echo '</pre>'; echo '<body onload="javascript: window.close()"></body>'; } else { echo '<body onload="javascript: location.href=\'' . $meli->getAuthUrl('https://www.meusite.com/index.php') . '\'"></body>'; }
  4. Buen día, recientemente me puse a trabajar con la API de MercadoLibre en mi propio sitio web, pude usarlo correctamente... hacer get/put/etc.. El problema es que cada vez que utilizo la API tengo que autenticar constantemente, por lo que no termino de entender como usar el access_token para que dure 6 horas (segun dice en los docs). El codigo que tengo es el siguiente: require_once "lib/Meli/meli.php"; $meli = new Meli('xxxxxxxxx', 'xxxxxxxxxxxxxxxxxxxxxxxxxxx'); $mlitem = $_GET['ml']; if (isset($_GET['code'])) { $user = $meli->authorize($mlcode, 'xxxxxxxxxxxxxxxxxxxxxxxxxxx/publicar.php?ml='.$mlitem); $_SESSION['access_token'] = $user['body']->access_token; $_SESSION['expires_in'] = $user['body']->expires_in; $_SESSION['refresh_token'] = $user['body']->refresh_token; if($_SESSION['expires_in'] + time() + 1 < time()) { try { echo "<b>Token Expirado</b><br /><br />"; print_r($meli->refreshAccessToken()); } catch (Exception $e) { echo "Exception: ", $e->getMessage(), "\n"; } } $modifyitem = $mlitem; $modifyfields = array( "price" => 10 ); echo '<pre>'; print_r($meli->put('/items/'.$modifyitem, $modifyfields, array('access_token' => $_SESSION['access_token']))); echo '</pre>'; } else { redirect($meli->getAuthUrl('xxxxxxxxxxxxxxxxxxxxxx/publicar.php?ml='.$mlitem, Meli::$AUTH_URL['MLA'])); } Al principio al no tener un CODE va directo al else con el redirect, lo que me da un CODE y luego funciona perfectamente, me guardo ese CODE y luego lo vuelvo a usar en el $_GET, pero se ve que el access_token no me dura ni 5 minutos y tengo que volver a entrar al else con el redirect, a lo que me devuelve el mismo CODE, pero supongo que diferente access_token porque vuelve a funcionar. Por lo tanto mi consulta es la siguiente: de que manera puedo usar la API sin tener que recurrir a un CODE nuevo todo el tiempo, tengo que guardar el access_token? como debo usarlo sin pasar por el CODE? Gracias
  5. Hola , que tal ? Estoy desarrollando una aplicacion en laravel con php y queria saber si habia alguna forma de probar la autorizacion y login a la aplicacion de mercadolibre desde localhost , es decir , si hay forma de modificar el Meli.php para que la redireccion se haga en una ruta local para pruebas. Muchas gracias, Saludos.