Wie zum extrahieren von Daten aus Tumblr API (JSON)?
Ich habe ein Tumblr-account und registrierte meine Bewerbung ihn zu authentifizieren.
Tumblr-Dokumentation: http://www.tumblr.com/docs/en/api/v2
Verstehe ich die API-Ausgänge JSON-so:
{
"meta": {
"status": 200,
"msg": "OK"
},
"response": {
"blog": {
"title": "David's Log",
"posts": 3456,
"name": "david",
"url": "http:\/\/david.tumblr.com\/",
"updated": 1308953007,
"description": "<p><strong>Mr. Karp<\/strong> is tall and skinny, with
unflinching blue eyes a mop of brown hair.\r\n
"ask": true,
"ask_anon": false,
"likes": 12345
}
}
}
Das ist gut, aber die Dokumentation endet dort. Ich habe keine Ahnung, wie man diese Informationen und zeigt Sie auf meiner Website.
Dachte ich, die Weise, die Sie erhalten würden, es wäre so etwas wie:
$.ajax({
url: "http://api.tumblr.com/v2/blog/myblog.tumblr.com/info?api-key=myapikey",
dataType: 'jsonp',
success: function(results){
console.log(results);
}
});
Aber das macht nichts.
Kann jemand mir helfen? Dank
- Es wird nichts protokolliert, um Ihre Konsole? Scheint zu funktionieren, hier.
- ja ich bekomme das auch. Aber ich bin mir nicht sicher, wie Sie actaully, schreiben Sie Elemente auf dem Bildschirm
- Sie sind mit dem request_token oder die access_token?
- äääh ich habe keine Ahnung. Gibt es eine Möglichkeit dies zu überprüfen?
- eigentlich für das obige Verfahren, brauchen Sie nur einen gültigen API-key. das OAuth-Tanz ist erforderlich für Benutzer-spezifische Daten.
- gerade überprüft die Dokumentation. Es sagt, um die Nutzung der OAuth-da die API-Schlüssel
- tumblr.com/docs/en/api/v2#blog-info , dies zeigt, dass die Authentifizierung benötigt, ist nur der api-Schlüssel oder auch bekannt als OAuth-Consumer-Key
Du musst angemeldet sein, um einen Kommentar abzugeben.
results
ist nun das Objekt, das Sie verwenden können, um die Referenz der JSON-Struktur. Wenn Sie die Konsole.die Ergebnisse protokollieren Objekt, es sollte angezeigt werden in der Javascript-Entwickler-Konsole, wo Sie erkunden können, das Objekt-Baum.Das response-Objekt
Also, wenn Ihr Erfolgs-callback die Antwort empfängt, der sollte Folgendes zur Verfügung:
results.meta.status
=> 200results.meta.msg
=> "OK"results.response.title
=> "David' s Log"results.response.posts
=> 3456results.response.name
=> "david"results.response.url
=> "http://david.tumblr.com/"results.response.updated
=> 1308953007results.response.description
=> "<p><strong>Mr. Karp</strong>..
"results.response.ask
=> trueresults.response.ask_anon
=> false,results.response.likes
=> 12345Schreiben auf der Seite
Wenn Sie wirklich wollen, um zu sehen, etwas geschrieben zu deiner Seite, benötigen Sie eine Funktion, die ändert das DOM-Dokument.schreiben, oder, da Sie mit Jquery $("#myDivId").html(Ergebnisse.Antwort.Titel);
Versuchen Sie dies:
<div id="myDivId"></div>
irgendwo in der Sie Ihre Seite, und$("#myDivId").html(results.response.title);
in Ihrem Erfolgs-callback-FunktionIn der Frage code, der den Typ der Anforderung wurde nicht eingestellt und es wurde abgelehnt von tumblr. Die jsonp-error-response gedruckt wurde-aus. Der folgende code korrekt macht die jsonp-Anfrage.
War der Schlüssel unter Angabe der Art und der Datentyp. Viel Glück happy hacking. 😉
Einer Weise zu schreiben, die ein Objekt auf dem Bildschirm, um ein element mit Ihrer JSON-Darstellung auf der Seite:
Hier ist eine demonstration: http://jsfiddle.net/MZR2Z/1/