2013-06-13 2 views
8

Con Twitter che spegne il rubinetto API 1.0 il 6/11/2013, abbiamo diversi siti che ora non riescono a visualizzare le timeline. Ho cercato un esempio "Se l'hai fatto, adesso fai questo". Ecco l'annuncio di Twitter. https://dev.twitter.com/blog/api-v1-is-retiredÈ necessario un semplice esempio dell'API di Twitter v1.1 per mostrare la timeline utilizzando jQuery o C# ASP.NET

Ecco cosa stavamo facendo inizialmente per mostrare la timeline di Twitter tramite API 1.0.

<div id="twitter"> 
    <ul id="twitter_update_list"></ul> 
    <script type="text/javascript" src="http://twitter.com/javascripts/blogger.js"></script> 
    <script type="text/javascript" src="http://api.twitter.com/1/statuses/user_timeline/companytwitterhandle.json?callback=twitterCallback2&amp;count=1"></script> 
    <div style="float:left;"><a href="https://twitter.com/companytwitterhandle" target="_blank">@companytwitterhandle</a> | </div> 
    <div class="twitterimg">&nbsp;</div> 
</div> 

Inizialmente ho provato a cambiare la versione nell'URL di riferimento JavaScript in questo modo, che non funzionava.

<script type="text/javascript" src="http://api.twitter.com/1.1/statuses/user_timeline/companytwitterhandle.json?callback=twitterCallback2&amp;count=1"></script> 

Poi ho guardato la documentazione API di Twitter (https://dev.twitter.com/docs/api/1.1/overview), che manca di un esempio di transizione chiaro. Non ho 4 o 5 ore per approfondire, o in questa FAQ disordinata (https://dev.twitter.com/docs/faq#17750).

Quindi ho trovato questa documentazione API relativa alla cronologia utente. Così ho cambiato di nuovo l'URL come mostrato di seguito. https://dev.twitter.com/docs/api/1.1/get/statuses/user_timeline

<script type="text/javascript" src="https://api.twitter.com/1.1/statuses/user_timeline.json?screen_name=companytwitterhandle&amp;count=1"></script> 

che non ha funzionato.

Utilizzo di jQuery o C# ASP.NET MVC, come posso passare quell'interfaccia dall'API di Twitter 1.0 all'API di Twitter 1.1? La mia prima preferenza sarebbe per un'implementazione lato client del browser, se possibile. Si prega di includere un esempio di codice. Grazie.

risposta

0

Ok, ho ricevuto una risposta da un collega che ha dovuto apportare un cambiamento simile alla mia azienda. Ecco la soluzione codificata. Lo ha ricevuto da un'azienda che abbiamo contratto per creare una nuova interfaccia per noi con una timeline di Twitter.

Si vedrà l'attributo data-widget-id18DigitMagicNumber. Questo numero è apparentemente legato al nostro account Twitter o alla nostra azienda. Non so come questo venga generato.

Come indicato, una società appaltata ha scritto quel codice per noi, quindi non cercherò di spiegare cosa sta facendo.

Ho tagliato e incollato questo da un sito in un sito non correlato e ha funzionato immediatamente. L'unica cosa che ho cambiato è stato rimuovere l'handle della società attuale e data-widget-id e sostituire il singolo @ con @@ per evaderlo in MVC.

Speriamo che questo possa aiutare alcuni di voi a migrare a Twitter 1.1. Grazie.

+0

Questo utilizza puro JavaScript piuttosto che jQuery come l'OP richiesto, e non sembra funzionare. https://jsfiddle.net/3xsjn59u/ –

+0

@WesModes, ero l'OP e questo codice funzionava in quel momento. Il post ha quasi 3 anni ora, quindi potrebbe non essere aggiornato in questo momento. Non ha senso fare downvoting di questo però. :) –

+0

Inoltre, l'esempio del violino ha la stringa "18digitmagicnumber" assegnata all'ID widget dei dati, piuttosto che un vero numero di Twitter. Avresti bisogno di un numero di conto reale per Twitter affinché quel codice di esempio funzioni. Quando in quel precedente datore di lavoro, non ritenevo prudente pubblicare tali informazioni. –

0

Questo è quanto ho fatto questo:

Si prega di vedere la mia domanda e risposta qui:

Authenticate and request a user's timeline with Twitter API 1.1 oAuth

utilizzare la soluzione di cui sopra e rendere il json tornare alla pagina, negozio in una variabile denominata json.

Inserire un riferimento a jQuery e la libreria js di testo twitter;

https://github.com/twitter/twitter-text-js

Aggiungi un div con una id o risultati al tuo aspx:

<div id="results"></div> 

si può rendere il contenuto con il seguente javascript:

for (var i = 0; i < json.length; i++) { 
       $("#results").append('<div class="tweet"><p><span><strong> - ' + json[i].created_at.substring(0, 16) + '</span></strong></span><br/>' + twttr.txt.autoLink(json[i].text) + '</p>'); 
       try { 
        for (var j = 0; j < json[i].entities.media.length; j++) { 
         $("#results").append('<a href="' + json[i].entities.media[j].media_url + '"><img src="' + json[i].entities.media[j].media_url + ':thumb" /></a>'); 
        } 

       } catch(e) { 
       } 
      } 
-1

Crea a JavaScript unica soluzione che funziona appena fuori dalla scatola per ottenere Twitter messaggi su tuo sito senza utilizzare nuova API - styling è lasciato a voi - ora può specificare il numero di tweets troppo:

http://goo.gl/JinwJ