2015-03-23 7 views
7

Per qualche motivo il mio script ha smesso di funzionare oggi. Quando guardo nel pannello di controllo API, ho ancora il 100% di utilizzo. Qualche idea? Hanno cambiato il modo auth?Goo.gl URL Shortener Stopped Working (php/curl)

function url_small($url) 
    { 
     //This is the URL you want to shorten 
     $longUrl = $url; 
     $apiKey = '#####HIDDEN######'; 
     //Get API key from : http://code.google.com/apis/console/ 

     $postData = array('longUrl' => $longUrl, 'key' => $apiKey); 
     $jsonData = json_encode($postData); 

     $curlObj = curl_init(); 

     curl_setopt($curlObj, CURLOPT_URL, 'https://www.googleapis.com/urlshortener/v1/url'); 
     curl_setopt($curlObj, CURLOPT_RETURNTRANSFER, 1); 
     curl_setopt($curlObj, CURLOPT_SSL_VERIFYPEER, 0); 
     curl_setopt($curlObj, CURLOPT_HEADER, 0); 
     curl_setopt($curlObj, CURLOPT_HTTPHEADER, array('Content-type:application/json')); 
     curl_setopt($curlObj, CURLOPT_POST, 1); 
     curl_setopt($curlObj, CURLOPT_POSTFIELDS, $jsonData); 

     $response = curl_exec($curlObj); 

     //change the response json string to object 
     $json = json_decode($response); 
     curl_close($curlObj); 

     return $json->id; 
    } 

risposta

stdClass Object 
(
    [error] => stdClass Object 
     (
      [errors] => Array 
       (
        [0] => stdClass Object 
         (
          [domain] => usageLimits 
          [reason] => dailyLimitExceededUnreg 
          [message] => Daily Limit for Unauthenticated Use Exceeded. Continued use requires signup. 
          [extendedHelp] => https://code.google.com/apis/console 
         ) 

       ) 

      [code] => 403 
      [message] => Daily Limit for Unauthenticated Use Exceeded. Continued use requires signup. 
     ) 

) 
+0

Dice proprio lì nel messaggio di errore: ** Limite giornaliero per non autenticato Usa superato. L'uso continuato richiede l'iscrizione. ** Suppongo che tu debba registrarti, eh? –

+0

@RobertHarvey sì è quello che mi confonde. Passa la chiave API che dovrebbe essere l'autenticazione e l'uso API per oggi è 0. – RichardW11

+0

Controlla [qui] (https://www.google.com/search?q=daily%20limit%20for%20unauthenticated%20use % 20exceeded.% 20continued% 20use% 20requires% 20signup) e riporta indietro. –

risposta

27

Così si scopre questa vecchia funzione che viene visualizzata in più siti web ora ha bisogno della chiave API da visualizzare nella sezione URL troppo per Google per registrare la richiesta al tuo account .

curl_setopt($curlObj, CURLOPT_URL, 'https://www.googleapis.com/urlshortener/v1/url'); 

commutato a questo

curl_setopt($curlObj, CURLOPT_URL, 'https://www.googleapis.com/urlshortener/v1/url?key='.$apiKey); 
+4

Grazie - non avresti potuto risolvere questo senza il tuo post! –

+0

Fantastico - è lo stesso che stavo battendo la testa contro il muro fino a quando ho trovato il tuo messaggio, Saluti! – CoalaWeb

+0

Salvato la mia notte! Tnx :) – tasmaniski