Ayuda con google url shortener api php

  • Autor Autor Oscar254
  • Fecha de inicio Fecha de inicio
Oscar254

Oscar254

Gamma
Verificación en dos pasos activada
Verificado por Whatsapp
Verificado por Binance
hola estoy creando un script para un cliente y tengo un problema con esta api la necesito para php, el código lo tengo en js (lo encontré en Internet y lo configure para lo que necesito).

Insertar CODE, HTML o PHP:
<script src="https://apis.google.com/js/client.js"> </script>
<script type="text/javascript">
function load()
{
    //Get your own Browser API Key from  https://code.google.com/apis/console/
    gapi.client.setApiKey('xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx');
    gapi.client.load('urlshortener', 'v1',function makeShort() 
{   
    var longUrl= document.getElementById('urllink').innerText;
    var request = gapi.client.urlshortener.url.insert({
      'resource': {
      'longUrl': longUrl
    }
    });
    request.execute(function(response) 
    {
 
        if(response.id != null)
        {
           
            str ="<a href='"+response.id+"'>"+response.id+"</a>";
            document.getElementById("output").innerHTML = str;
        }
        else
        {
            alert("error: creating short url n"+ response.error);
        }
 
    });
 });
 
}
window.onload = load;
</script>

La función de este código es coger el contenido de texto de la div "urllink" que por php lo configure para que el contenido de esa div sea un link configurado en texto, luego con css lo oculte.
si todo esta bien de eso en la div llamada "output" introduce el shorlink de google y si no te muestra una venta que dice error: creating short url .
Esta función lo hice ya que no puedo pasar variables directamente de php a js si no necesitaría de ajax, pero no logre hacerlo.
Pueden ver que si funciona en chrome pero al entrar por el firefox no da error y aparte que lo necesito en php para darle otras funciones ya que con js se como hacerlo aun.

Por favor si alguien lo tiene o podría traducirlo a php se le agradecería de antemano, saludos :encouragement:


- - - Actualizado - - -

¿Alguien que sepa del tema? o me de alguna alternativa 🙂
 
Última edición:
Bueno, no logre resolver el problema con google shortener para php, pero implemente el de bitly para php. Funciona bien aquí les dejo el codigo si alguien lo necesitara algún día:

PHP:
function get_bitly_short_url($url,$login,$appkey,$format='txt') {
    $connectURL = 'http://api.bit.ly/v3/shorten?login='.$login.'&apiKey='.$appkey.'&uri='.urlencode($url).'&format='.$format;
    return curl_get_result($connectURL);
}

/* returns expanded url */
function get_bitly_long_url($url,$login,$appkey,$format='txt') {
    $connectURL = 'http://api.bit.ly/v3/expand?login='.$login.'&apiKey='.$appkey.'&shortUrl='.urlencode($url).'&format='.$format;
    return curl_get_result($connectURL);
}

/* returns a result form url */
function curl_get_result($url) {
    $ch = curl_init();
    $timeout = 5;
    curl_setopt($ch,CURLOPT_URL,$url);
    curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
    curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,$timeout);
    $data = curl_exec($ch);
    curl_close($ch);
    return $data;
}

// INICIO APIS
	// Para conseguir la api username y key de bitly
	// Ingresa a: https://bitly.com/a/sign_in?rd=/a/your_api_key
	// Inicia seccion (recomendado iniciar seccion con facebook facil y rapido)
	// 	Una vez iniciado seccion se mostrara un cuadro con los siguientes codigos
	// BITLY USERNAME y BITLY API KEY
	//copia y pega dentro de las comillas (importante no borrar las comillas)
$bitlyusername ='xxxxxxxxxxxx'; //Codigo de 12 digitos aprox
$bitlyapikey ='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'; // codigo de 34 digitos aprox
$absolute_url ='http://www.miweb.com'; //url que deseas recortar
// FIN APIS

/* get the short url */
$short_url = get_bitly_short_url(''.$absolute_url.'',''.$bitlyusername.'',''.$bitlyapikey.'');

/* get the long url from the short one */
$long_url = get_bitly_long_url($short_url,''.$bitlyusername.'',''.$bitlyapikey.'');


echo $short_url; // Aquí aparecería tu link recortado con bitly
 
Última edición:
¿Hay demo? Soy curioso pero quiero entender jijijijijijijiji.
 
Atrás
Arriba