php - Server-sida eller klient-sida för att hämta tweets?


Jag driver den här webbplatsen för min pappa som hämtar tweets från hans Twitter-flöde och visar dem i ett alternativt format. För närvarande hämtas tweets med JavaScript, alltså helt på klientsidan. Är det det mest effektiva sättet att göra det på? Webbplatsen har nästan ingen trafik, men jag är bara intresserad av vad som skulle vara det bästa sättet att skala upp den. Alla råd är uppskattade. Jag funderar också på att inkludera artiklar i flödet vid något tillfälle. Vad skulle vara det bästa sättet att implementera det?

Svar #1

Twitter API-förfrågningar är begränsade till 150 per timme. Om din sida begärs mer än så kommer du att få ett fel från Twitter API (ett HTTP 400-fel). Därför är det förmodligen en bättre idé att begära tweets på servern och cachelagra svaret under en viss tidsperiod. Du kan begära de senaste tweetsen upp till 150 gånger per timme, och varje gång din sida begärs får den de cachelagrade tweetsen från ditt serverskript istället för att anropa API:et direkt.

Från Twitters dokumentation:

Oautentiserade anrop tillåts 150 förfrågningar per timme. Oautentiserade anrop mäts mot den publika IP-adressen för servern eller enheten som gör förfrågan.

Jag gjorde nyligen lite arbete med att integrera med Twitter API på exakt samma sätt som du har gjort. Vi nådde snabbt gränsen för antal förfrågningar, även bara när vi testade appen. Den appen cachar nu tweets på servern och uppdaterar cachen några gånger varje timme.

Svar #2

Jag skulle rekommendera att använda klient-sidan för att anropa Twitter API. Undvik att anropa din server. Den enda nackdelen med att använda klient-sidans js är att du inte kan kontrollera om tittaren har js avaktiverat eller inte.

Vilken typ av artikel ville du inkludera i flödet? Som blogginlägg direkt på din webbplats eller externa artiklar?