Ignore:
Timestamp:
06/15/12 14:49:24 (12 years ago)
Author:
acoutinho
Message:

Ticket #2766 - Melhorias e correcoes na api rest, criacao de novo cliente

File:
1 edited

Legend:

Unmodified
Added
Removed
  • sandbox/2.4.1-3/prototype/me.php

    r6357 r6523  
    11<?php 
    2  
    32require_once  (dirname(__FILE__).'/api/controller.php'); 
    43use prototype\api\Config as Config; 
    54 
    65$me = Controller::read(array('concept' => 'user', 'service' => 'OpenLDAP'  , 'id' => Config::me('uidNumber'))); 
     6 
     7if(isset($_POST['refreshToken'])){ 
     8     
     9    $ch = curl_init(); 
     10 
     11    $restConf = parse_ini_file( __DIR__ . '/config/REST.ini', true ); 
     12 
     13    $param  = 'grant_type=refresh_token'; 
     14    $param .= '&client_id=' . $restConf['oauth']['client_id']; 
     15    $param .= '&client_secret=' . $restConf['oauth']['client_secret']; 
     16    $param .= '&refresh_token=' . $_SESSION['oauth']['refresh_token']; 
     17 
     18    // set URL and other appropriate options 
     19    curl_setopt($ch, CURLOPT_URL, $restConf['oauth']['url_token']); 
     20    curl_setopt($ch, CURLOPT_HTTPHEADER, array('Accept: */*')); 
     21    curl_setopt($ch, CURLOPT_POST, TRUE); 
     22    curl_setopt($ch, CURLOPT_POSTFIELDS, $param); 
     23    curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);  //configura para nao imprimir a saida na tela 
     24    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 2);//Passe um número long como parâmetro que contêm o limite de tempo, em segundos, que você permite as funções CURL levar.  
     25 
     26    // grab URL and pass it to the browser 
     27    $res = curl_exec($ch); 
     28 
     29    // close cURL resource, and free up system resources 
     30    curl_close($ch); 
     31    $a = json_decode($res); 
     32 
     33    if ( isset($a->access_token) ) { 
     34        $_SESSION['oauth']['access_token'] = $a->access_token; 
     35        $_SESSION['oauth']['expires_in'] = $a->expires_in; 
     36        $_SESSION['oauth']['token_type'] = $a->token_type; 
     37        $_SESSION['oauth']['scope'] = $a->scope; 
     38        $_SESSION['oauth']['refresh_token'] = $a->refresh_token; 
     39        $_SESSION['oauth']['client_secret'] = $restConf['oauth']['client_secret']; 
     40    }  else { 
     41        echo json_encode(null); 
     42        return; 
     43    } 
     44} 
     45 
    746$me['token'] = $_SESSION['oauth']['access_token']; 
    8  
    947echo json_encode( $me ); 
    1048 
Note: See TracChangeset for help on using the changeset viewer.