- twitter api -

, dykning i twitter api -,,,,, andel,,,,,,,, 6,,,,,,, det cyber - mandag envato tuts + kurser vil blive reduceret til $3.- og' t miss.,, twitter er forbløffende vækst er på lige fod med sin intuitive, udvikler miljøvenlige api - grænseflade.i anden del af denne serie, vi kommer til at lære mere om twitter er api - og hvordan til at arbejde med.,,,, for meget abstrakte er aldrig en god ting. i denne web 2.0 æra, web - applikationer, der er let at anvende, intuitive api - har en klar fordel, da det lader udviklere, udnytte og bygge på platformen og dermed fange flere brugere.efterhånden som vi bevæger os hen imod den sociale net, og mashups, en god api - er ikke en god tilføjelse mere: det er direkte nødvendigt.og husk, alt for meget abstrakte er aldrig en god ting.mens der findes en række api - systemer, der arbejder med at forenkle de api i spørgsmål, ville det ikke være fedt at vide, hvad der faktisk foregår under hjelmen?ville det ikke være spændende at dekonstruere den faktiske voodoo foregår mellem udstyret og api?ja, det tænkte jeg nok.,, før vi begynder, for hver funktion, vil jeg vise dig, hvordan det skal opnås på to måder: for det første ved hjælp af en server side sprog under folkesundhedsprogrammet i denne sag, og den anden med en klient side sprog, javascript.hver gennemførelse vil fungere separat og opnå den nødvendige funktionalitet.det er gratis at blande disse løsninger for at skabe en hybrid.den javascript eksempler vil bruge json som udformning af lasten, mens der for folkesundhedsprogrammet eksempel, jeg har valgt xml.,, twitter api grundlæggende, den første ting, du skal vide om twitter api - er, at det er afslappende.for at reducere den jargon, betyder det at du få adgang til passende url - adresser med få eller post anmodninger om at ændre, anmodning eller manipulere dataene afsløret af api - grænseflade.der er tre separate twitter api - grænseflader, faktisk., den normale resten baseret api, søgningen api, strømmen api, hver af disse apis har deres eget sæt særlige funktioner, særheder, fordele og ulemper.andre api, resten metoder udgør kernen i twitter api - og er skrevet af devs på twitter.det giver mulighed for, at andre udviklere adgang og manipulere hele twitter er primære data.du ville bruge denne api til at gøre alle de sædvanlige ting, du ville gøre med twitter, herunder generhverve status, ajourføring af status, der viser en brugers tidslinje, sender direkte budskaber og så videre.- api, søgningen api - faktisk er en idé fra de fyre på summize inc, et selskab, der har erhvervet sin adi på twitter.eftersøgningen api - lader dig se ud over dig og dine tilhængere.du har brug for denne api - hvis du ser på mode igen emner og så videre., strøm api, endelig har vi strøm api - grænseflade.denne api - udviklere prøve enorme mængder af tidstro data.da denne api kun er tilgængelig til godkendte brugere, skal vi ikke tage det i dag.,, autentificering og alt det boohockey, offentlige data kan være frit tilgængelige uden en api - nøgle.når der anmodes om private data og /eller brugers specifikke data, twitter kræver godkendelse.kan du bekræfte med twitter, enten ved hjælp af to metoder, basic authentication, dette er standardmetoden for autentificering twitter oprettet med og anvendelsesformål.i denne metode, du består af brugernavn og password, som bse64 kodet bånd i hovedet af http anmodning.en prøve få anmodning ville se ud.få /somefolder /index.html http //1.1 - net.tutsplus.com tilladelse: grundlæggende dxnlcm5hbwu6cgfzc3dvcmq =, det ser en smule kompliceret, ikke?lad mig forklare.de første to linjer er en del af en standard få anmodning.den tredje linje, hvor alt sker der magi.vi er sikre på, - - ved vi bruger grundlæggende bidrager til at bekræfte det, og så gå i basen 64 indkodet snor af brugernavn: kodeord, som værdi.serveren kan afkode den prøvelse, tjek dem og give adgang, hvis det passer, twitter støtte til grundlæggende, men sandsynligvis er en af grundene til, at det blev så stor, da det nu en lang række udviklere udvikle for platformen siden hindring for medlemskab er forholdsvis lav.grundlæggende) er tilstrækkelig til at hente alle dele af api -., oauth, twitter begyndte at støtte oauth i andet kvartal af 2009.brugere, der anvender oauth muliggjort anvendelse må ikke videregive deres kodeord til programmet og kan også overdrage kontrollen til programmet med flere niveauer af adgang.men vi vil ikke se på twitter er oauth gennemførelse i dag.oauth og gennemførelsen af dets arbejdsgang er temmelig komplicerede emne, og kræver en artikel af sine egne.jeg vil hellere springe over oauth for denne artikel, snarere end at smide nogle halve forklaringer og skrive kode baseret på disse forklaringer.,, forsigtighed, "twitter kun lader dig gøre en forud fastlagt antal opkald til api.", før vi graver i til kodende del, er jeg nødt til at gøre én ting helt klart: twitter kun lader du får en på forhånd fastlagt antal opkald til api - grænseflade.resten api er grænse er 150 i en time, mens eftersøgningen api er grænse er ukendt, som nu.for bekræftet opkald, er fratrukket pa˚tegnelse af brugerens grænseværdi, mens unauthenticated kalder det trækkes fra, at ip man 's kvote.kan du huske, da udviklingen, en ansøgning, være sikker på, at du enten cache oplysninger eller overholde den grænse og blive i det.hvis du tror, den fastsatte grænse er utilstrækkelige for deres anvendelse, kan du altid finde anvendelse for hvide lister.den mest almindelige opgaver, i stedet for at se på en række metoder, vil du sandsynligvis ikke bruger, har jeg besluttet at vise dig, hvordan de tre vigtigste opgaver.,, hente din status, ajourføring af din status, at twitter, tror jeg, at dette er en god del af api - grænseflade, som direkte vedrører, hvad api er mest anvendt til uden spreder sig alt for meget ved at dække en masse metoder.med det, lad os komme i gang!,, hente din status, den første funktion, skal vi se på udviser en brugers status.det er den mest populære anvendelse af api om et web - entreprenør vil udvise en given bruger status uden at ty til en twitter skilt.under folkesundhedsprogrammet metode: direkte søgning, <?php $svar = nye simplexmlelement ('http: ////////////////////////////vise brugerne twitter. kom /brugeridentifikation. xml, nul, sande); echo $svar - > status - > tekst. "-". dato ("g: jeg: d, f, er y", strtotime (- svar - > status - > created_at)?> den første metode anvendes høreværn.det er en forholdsvis enkel metode, hvor vi bare tage den brugerspecifikke xml - filer, og derefter analysere det viser den aktuelle status.vi omdanne xml - dokumenter til en genstand, så vi kan nemt går igennem ved hjælp af simplexml udvidelse, der kommer standard med folkesundhedsprogrammet.nu, hvor formålet er blevet skabt, vi bare finde, status, knudepunkt og printe status tekst og oprettelse. husker, det kun har status af brugeren.hvis du vil have en liste over de seneste opdateringer, se nedenfor.under folkesundhedsprogrammet metode: krøller, krøller er en kommando linjen værktøj og kommer mulighed for på de fleste var vært for servere.for at citere wikipedia:,, databehandling, krølle, fungerer som et command-line redskab til overførsel af filer med url syntaks. det er et bibliotek, der giver brugerne mulighed for at forbinde forskellige typer servere ved hjælp af forskellige protokoller.ved hjælp af krøller er den foretrukne måde for alle twitter - biblioteker derude, og vi kommer med det samme., <?php $brugernavn = xxx. $kodeord = yyy. $curlhandle = curl_init(); curl_setopt ($curlhandle, curlopt_url "http: ////////////////////////////user_timeline status twitter. kom. -"); curl_setopt ($curlhandle, curlopt_userpwd $brugernavn. "". $password); curl_setopt ($curlhandle, curlopt_returntransfer, 1); $svar = curl_exec ($curlhandle); curl_close ($curlhandle); $xmlobj = nye simplexmlelement ($svar); for hvert ($xmlobj - > status som $status) (echo $status - > tekst. < br /> og med ". $status - > brugeren - > screen_name." i '. dato ("g: jeg: d, f, er y", strtotime ($status - > created_at). < br /> < br /> «)?>, lad mig forklare.vi sætter vores brugernavn og password til forskellige variabler, der skal anvendes senere.jeg så adressen til den værdi, der er nævnt ovenfor.da metoden kræver godkendelse, vi sender vores brugernavn og password.næste, vi udfører vores opfordring og opbevarer reaktion i forskellige variable.vi vil lave det om til et gyldigt xml - formål og analysere data, trykning af status, og da det var udstationeret.jeg har formaterede data og tid til at se på den måde, jeg vil have.hvis du vil have datoer og tidspunkter, 3 timer siden, eller 12 dage siden, du er nødt til at se en snippet eller kode én selv.twitter kun udbytte normalt formaterede data og tid. du får en produktion, som svarer til det, jeg er dum.ikke en ide, og missede et komma spilder 110 minutter.mind mig om ikke at prøve debugging - når jeg er søvnig eller træt.kl. 6: 01: 00 fredag, den 14. februar 2010 strøm af trafikken.jeg skal have: o budgetteret for så mange besøgende.argh!håber ikke, det går i stykker.på 8:51: pm - tor, 13. februar 2010, javascript ved hjælp af javascript at vise deres status er den mest elegante måde at gå fremad, da du kan lade det asynkront med efter side har ladt, som betyder, at selv hvis twitter er downm eller blive sent, din hjemmeside funktioner, det samme. vi skal bruge jquery er ajax metode til at gøre alt det beskidte arbejde i dag.$. ajax ((url: "http://twitter.com/statuses/user_timeline/userid.json?callback =? ", datatype: "json" timeout: 15000 succes: funktion (data) ($("# oplysninger"). http: //("data med succes, der er opnået.< br /> ") til (i = 0. jeg < data.length; jeg + +) ($("&#oplysninger "). både (< p >" + data [i]. tekst) + "< /p >". $("# oplysninger"). både (< p > "+ data [i]. created_at +" < /p > ");}}, fejl: function() (varsling (" fiasko ".);}}), en stor del af koden, men opdelt, det er så enkelt.vi bruger jquery laveste niveau ajax funktion i stedet for getjson metode, idet det lave niveau kalder synes at være mere alsidig., for det første, vi definerer url og datatype.vi tilføjer en callback - funktion til url til at omgå de tværgående begrænsning på de fleste browsere.uden at dette opkald til vores script ville ikke løbe. det ville bare returnere en fejl og give op. jeg har valgt ikke at godkende, fordi vi er en angivelse af en id på url, og derfor ikke har brug for autentificering - og fordi grundlæggende, men er ikke sikkert for følsomme oplysninger.du ønsker ikke at sende dit kodeord i en usikker linje.endelig succes funktion, som kaldes, når ingen fejl er stødt på.vi har lige analysere den tilbage json genstand og udskriv teksten og skabelse.,&#data, er blot en beholder, hvor vi sætter alle vores oplysninger. en hurtig besked, koden er modellen for alle dine metoder, som adgang til oplysninger.minimale ændringer er nødvendige for at ændre den for at arbejde med andre api - metoder. for folkesundhedsprogrammet eksempel, alt du har brug for at ændre, url værdi til at pege på en ny metode, og du skal hovedsagelig være færdig.hvis metoden kræver parametre, du skal bare lægge dem direkte til url selv.- så simpelt er det.sammen med de javascript eksempel.alt, hvad du havde brug for at gøre, er at ændre url, at metoderne anmodning, og det bør gøres.sørg for at hente kun offentlige data med javascript metode., så husk på, at denne kodeks er grundlaget for alle andre metoder, der kunne hente data.dette omfatter metoder, få din direkte budskaber, tidsfrister, venner og tilhængere, og nævnte tweets.bare skift url, tilføje en parameter, som er nødvendig, og du er klar!nemt, ikke?,, ajourføring af din status, med en twitter anvendelse, de skaber, at lade brugerne ajourføre deres status gennem det er ligetil.kan du huske, tidligere anvendelser af grundlæggende, men var i stand til at bruge en skik kilde snor for alle tweets fra deres ansøgning.nu, gennemførelse af oauth er den eneste måde, du får en sædvane i snor.kort sagt, hvis du vil have alle tweets fra din ansøgning til et link til din app, anvendelse oauth.med det, lad os se koden. under folkesundhedsprogrammet, <?php $brugernavn = xxx. $kodeord = yyy. $status = 'test ud... med twitter api' $curlhandle = curl_init(); curl_setopt ($curlhandle, curlopt_url "http: ////////////////////////////opdatere status twitter. kom. -"); curl_setopt ($curlhandle, curlopt_userpwd, $brugernavn. "". $password); curl_setopt ($curlhandle, curlopt_returntransfer, 1); curl_setopt ($curlhandle, curlopt_post, 1); curl_setopt ($curlhandle, curlopt_postfields "status = $status"); $svar = curl_exec ($curlhandle); curl_close ($curlhandle)?> vi kan bruge krølle lige så let at post på twitter.koden er næsten det samme som før, men vi ændre adressen til den relevante.også, og vi sørger for udstationering er aktiveret, og de områder, der skal udstationeres.api - metode kræver en status parametre, og så vi værdien af status variabel til denne parameter., husker, for at sikre, at den tekst, der skal udstationerede er utf - 8, indkodet.ellers ville vi løbe ind i unødvendige fejl.er vi nu redde den reaktion, der anvendes til senere.i dette eksempel, jeg har valgt ikke at gøre noget.men i en praktisk anvendelse, ville du sikkert vil udvise en succes /fejlmeddelelse og /eller udvise respons., javascript udstationering en opdatering på twitter, kun ved brug af javascript ser ud til at være umuligt, nu, da der ikke er nogen måde at gå på brugerens id og kodeord.med flickr legitimationsoplysningerne overføres som en del af den efterfølgende anmodning om sig selv.med twitter, disse data skal fremsendes i http rør, og der synes ikke at være en måde at gøre det på.selv uden hensyntagen til, at de kan ikke sende papirer til tjeneste, er der stadig problemer med ikke at kunne få tværgående post anmodninger med xmlhttp objekt.disse to punkter giver api - metoder, der kræver en efter anmodning en streng nej med javascript. i tilfælde af, at du er interesseret, en vellykket efter redskaber i dette svar., <?xml - version = "0" kodning = "utf - 8"?> <?xml - version = "0" kodning = "utf - 8"?> <status> <created_at>Fri Aug 14 21:31:53 +0000 2009</created_at> <id>3316091255</id> <text>Testing out cURL with the Twitter API</text> <source><a href="http://apiwiki.twitter.com/" rel="nofollow">API</a></source> <truncated>false</truncated> <in_reply_to_status_id></in_reply_to_status_id> <in_reply_to_user_id></in_reply_to_user_id> <favorited>false</favorited> <in_reply_to_screen_name></in_reply_to_screen_name> <user> <id>18118645</id> <name>Tony /Siddharth</name> <screen_name>lordtottuu</screen_name> <location> indien < /placering > < beskrivelse > spiller, entreprenør, web designer, forfatter, nørd.< /beskrivelse > < profile_image_url > http: //s3. amazonaws. kom /twitter_production /profile_images /300532536 /nvagsonips_o5xxbmb4pl-boghey6jbasailiiegiao6jtithnrmnja6ktcprmqw_normal jpg < /profile_image_url > < url > http: //////////////ssiddharth. kom < /url > < beskyttede > falske < /beskyttede > < /bruger > < /status > en hurtig bemærkning, kode teknikker som beskrevet ovenfor, består af grundlaget for alle data, der sender data til twitter.dette omfatter metoder, der lader dig følge /unfollow nogen sende direkte budskaber, der skaber favoritter, blokerer for mennesker, og så videre.det eneste du skal gøre er at ændre disse ip - adresser, se, om der er behov for ekstra parametre og tilføje dem efter behov.intet andet er nødvendig.,, søger twitter, at lade brugerne søge gennem twitter for information kan være et vigtigt behov for en ansøgning.til dette formål, kan vi bruge den lede api til søgning på twitter.under folkesundhedsprogrammet, <?php $searchstring = "envato". $curlhandle = curl_init(); curl_setopt ($curlhandle, curlopt_url "http://search.twitter.com/search.json?q = $searchstring "); curl_setopt ($curlhandle, curlopt_returntransfer, 1); $svar = curl_exec ($curlhandle); curl_close ($curlhandle); $json = json_decode ($svar); for hvert ($json - > resultaterne som $resultat) (echo $resultat - > tekst.}?> ovennævnte kode lader dig lede twitter til tweets som reference envato.som sædvanlig, vi ændrer url til at pege på, at den korrekte api - metode og gå videre.da denne metode er kun til rådighed i json eller atom formater, jeg har valgt at gå med json.jeg har brugt folkesundhedsprogrammet er indbygget, json_decode, opgave at omdanne det til et objekt, så vi kan analysere reaktionen let.i dette eksempel, jeg har kun trykt den tweets selv.i deres ansøgninger, ville du sikkert gerne vise mere.en prøve på nedenfor., [tekst] = > @ nsethi tjek http://www.envato.com/, hvis du vil have nogle syge tuts... jeg skal blogge om det senere.[to_user_id] = > 1273919 [to_user] = > nsethi [from_user] = > thinklime [-] = > 3315720513 [from_user_id] = > 33020944 [iso_language_code] = > en kilde] = > < en href = "http://www.atebits.com/" og = "nofollow" > tweetie < /a > [profile_image_url] = > http://s3.amazonaws.com/twitter_production/profile_images/201032569/idtwitter_normal.jpg [created_at] = > fre, 14. august 2009 21:10:42 + 10.000, som du kan se, en masse oplysninger om brugeren og pip i sig selv er til rådighed.de er fri til at blande dem., javascript $. ajax ((url: "http://search.twitter.com/search.json?q = somestring & callback =? ", datatype: "json" timeout: 15000 succes: funktion (data) (//analysere data), fejl: function() (varsling ("fiasko".);}}), som sædvanlig, vi bruger ajax metode til ping twitter søger tjeneste.lige som i det foregående eksempel, vi har medtaget en callback - funktion til at komme over den tværgående begrænsning. en prøve på, tog direkte fra twitter, ligner det., ("resultater": [{"tekst": "@ twitterapi http: ////////////////tinyurl. kom. ctrefg", "to_user_id": 396524 "to_user": "twitterapi", "from_user": "jkoum", "id": 1478555574 "from_user_id": 1833773...trunkerede...] "since_id": 0, max_id ": 1480307926" refresh_url ":"?since_id = 1480307926 & d =% 40twitterapi "," results_per_page ": 15," next_page ":"?s = 2 & max_id = 1480307926 & d =% 40twitterapi "," completed_in ": 0.031704" side ": 1" query ""% 40twitterapi "), som en sidebemærkning, at søge metode kan anvendes på en række forskellige måder.,,?q = envato - søgning efter tweets med snoren envato,?q =&#envato - søger hashtags af envato,,?sætning = envato + markedsplads - søgning efter tweets med udtrykket envato markedsplads,?q = fra: nettuts - returnerer alle tweets fra nettuts,,?q =: nettuts - angivelser for alle beskeder til nettuts, hvorfor andre metoder er ikke dækket, har jeg besluttet at begrænse mig til at vise, hvordan til at læse fra og skrive til en tjeneste, ved hjælp af sine api - grænseflade.på denne måde kan jeg kun fokusere på de specifikke metoder.og også, fordi de fleste metoder bygger på disse grundlæggende.hvis du ønsker at vende tilbage til en vens tidslinje, ville du bare skifte url og analysere ved reaktion med minimal ståhej. det samme er tilfældet, hvis du vil sende en besked til en anden bruger eller at nævne en anden bruger.den grundlæggende opgave er der stadig.du skal bare tilføje en parameter eller to for at gøre det hele.det giver ingen mening at dække alt det, når jeg kan kun forklare det basale mere klart.jeg håber, du har lært mere om, hvordan arbejdet med twitter er api - i dag.som altid, så lad mig det vide, via de bemærkninger, hvis du har brug for hjælp!,



Previous:
Next Page: