Visualizzazione risultati 1 fino 9 di 9

Discussione: Problema con l'API di un sito... possibile sia colpa del CURL?

  1. #1
    americanhorizon non è connesso Neofita
    Data registrazione
    02-10-2008
    Messaggi
    28

    Angry Problema con l'API di un sito... possibile sia colpa del CURL?

    Mi serve prelevare la lista di video da redtube tramite l'API messa a disposizione da loro, ma stranamente non mi viene restituito alcun risultato..
    possibile che dipenda dal fatto che ho il CURL limitato?

    Io ho semplicemente incollato il codice proposto in questa pagina
    http://api.redtube.com/docs/#quickstartguide
    al capitolo "An example of how to view all active videos on RedTube.com"

    Neanche un errore mi viene restituito.. pagina bianca assoluta!

  2. #2
    Guest

    Predefinito

    Ciao, non è un problema di cURL perché il codice che hai indicato non contiene chiamate a funzioni di questa libreria.

    Se vai all'indirizzo http://api.redtube.com/?output=json&...hVideos&page=0 la pagina ti restituisce i risultati, quindi non è un problema delle API di RedTube. E non è nemmeno un problema di AlterVista, perché ho provato ad eseguire il seguente codice dal mio sito:
    Codice PHP:
    echo file_get_contents('http://api.redtube.com/?output=json&data=redtube.Videos.searchVideos&page=0');
    e i risultati ci sono.
    Il problema è un altro: hai semplicemente incollato [cit.] il codice di quella pagina probabilmente senza nemmeno leggerlo ;)

    Di fatto, quel codice non visualizza assolutamente nulla in quanto è puramente dimostrativo. Basta che guardi i commenti nel while in fondo:
    Codice PHP:
    while(true) {
    // ...
    // you can do whatever you want with that video details
    // ...
    // Something is wrong with the response. You should handle that exception.
    }
    Il copia e incolla spudorato del codice, senza nemmeno leggere cosa fa e come funziona, è la cosa peggiore che si possa fare.

  3. #3
    americanhorizon non è connesso Neofita
    Data registrazione
    02-10-2008
    Messaggi
    28

    Predefinito

    me lo sono letto eccome il codice, ma a continuo a non capire.

    Inoltre io l'ho alterato mettendo un echo nel ciclo FOREACH, che teoricamente dovrebbe essere stampato ad ogni video estrapolato dal sito... Ebbene, l'echo non viene mai eseguito, indice che non mi viene restituito alcun risultato.


    Codice PHP:
    while(true) {

    try{
    if(
    $page > $pages)
    break;

    $videoResponse = getRedtubeVideos($page);
    // If you want to get videos from specific category you should pass second parameter to getRedtubeVideos function which is the name of the category.
    // getRedtubeVideos($page,'CATEGORY_NAME_HERE');
    $videos = $videoResponse->videos;

    foreach(
    $videos as $video) {
    $video_obj = $video->video;
    echo(
    'st');
    // $video_obj->title
    // $video_obj->duration ... etc
    // you can do whatever you want with that video details
    }

  4. #4
    americanhorizon non è connesso Neofita
    Data registrazione
    02-10-2008
    Messaggi
    28

    Predefinito

    Anzi rettifico con un qualcosa di più eloquente

    Codice PHP:
    while(true) {
    echo (
    'while');
    try{
    if(
    $page > $pages)
    break;
    echo (
    'try');
    $videoResponse = getRedtubeVideos($page);
    // If you want to get videos from specific category you should pass second parameter to getRedtubeVideos function which is the name of the category.
    // getRedtubeVideos($page,'CATEGORY_NAME_HERE');
    $videos = $videoResponse->videos;

    foreach(
    $videos as $video) {
    $video_obj = $video->video;
    echo(
    'video');
    // $video_obj->title
    // $video_obj->duration ... etc
    // you can do whatever you want with that video details
    }
    Il risultato che mi viene stampato è whiletrywhile... la parola "video" non viene mai stampata, indice del fatto che il while viene eseguito, il try superato e poi al momento di conteggiare i video non trova nulla

  5. #5
    americanhorizon non è connesso Neofita
    Data registrazione
    02-10-2008
    Messaggi
    28

    Exclamation

    Citazione Originalmente inviato da noktalk Visualizza messaggio
    Ciao, non è un problema di cURL perché il codice che hai indicato non contiene chiamate a funzioni di questa libreria.

    Se vai all'indirizzo http://api.redtube.com/?output=json&...hVideos&page=0 la pagina ti restituisce i risultati, quindi non è un problema delle API di RedTube. E non è nemmeno un problema di AlterVista, perché ho provato ad eseguire il seguente codice dal mio sito:
    Codice PHP:
    echo file_get_contents('http://api.redtube.com/?output=json&data=redtube.Videos.searchVideos&page=0');
    e i risultati ci sono.
    Ho provato anche io ad eseguirlo e ugualmente non mi restituisce nessun risultato.
    Non è che tu hai il CURL abilitato?

  6. #6
    Guest

    Predefinito

    Allora ti chiedo scusa, ma da come hai scritto sembrava avessi fatto un copia e incolla spudorato ;) Comunque è probabile che tu debba sbloccare le connessioni server to server (io le ho sbloccate infatti).

    Prova anche a gestire (se non lo hai già fatto) l'eccezione nel try-catch. Ti restituisce qualche errore?

  7. #7
    americanhorizon non è connesso Neofita
    Data registrazione
    02-10-2008
    Messaggi
    28

    Predefinito

    nel catch ho messo echo ('err') e no, non mi viene trovato alcun errore

  8. #8
    Guest

    Predefinito

    Allora prova a sbloccare le connessioni server to server e vedi se ti funziona. Di base AlterVista ti permette di connetterti solo ad una serie limitata di siti inseriti in una whitelist e di sicuro redtube.com non è in questa lista. Lo puoi fare tramite il pannello di controllo.

  9. #9
    Guest

    Predefinito

    ok ho risolto sbloccando le connessioni StS

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •