2010-02-04 10 views
6

ट्विटर एपीआई रिटर्न ट्विटर अकाउंट 'image_url' के लिए यह मूल्य: https://s3.amazonaws.com/twitter_production/profile_images/75075164/twitter_bird_profile_bigger.pngट्विटर अवतार छवियों को हॉटलिंक करना?

किसी भी: http://a1.twimg.com/profile_images/75075164/twitter_bird_profile_bigger.png

मेरी ट्विटर ग्राहक webapp में, मैं जो अमेज़न S3 पर होस्ट की है अवतारों के HTTPS वर्शन hotlinking पर विचार कर रहा हूँ सर्वोत्तम प्रथाओं जो मुझे ऐसा करने से हतोत्साहित करेंगे? क्या तृतीय पक्ष ट्विटर क्लाइंट एप्लिकेशन आमतौर पर अवतार की अपनी प्रतियों की मेजबानी करते हैं?

संपादित: स्पष्ट करने के लिए, मैं छवियों के लिए HTTPS का उपयोग करने के लिए क्योंकि मेरी webapp HTTPS कनेक्शन का उपयोग करेगा की जरूरत है और मैं अपने उपयोगकर्ताओं को कुछ सामग्री जो नहीं है युक्त पृष्ठ के बारे में अपने ब्राउज़र से सुरक्षा चेतावनी पाने के लिए नहीं करना चाहते हैं प्रमाणीकृत। उदाहरण के लिए, फ़ायरफ़ॉक्स मिश्रित http/https सामग्री के बारे में शिकायत करने के लिए जाना जाता है।

मेरी समस्या यह पता लगाना है कि https द्वारा https URL को हॉटलिंक करना प्रतिबंधित है या नहीं, क्योंकि ये यूआरएल उनके एपीआई से "सार्वजनिक" नहीं हैं। HTTPS में मेरे ट्विटर खाते से कनेक्ट होने पर मैंने उन्हें अपने वेब क्लाइंट HTML स्रोत का विश्लेषण करके प्राप्त किया।

उत्तर

5

क्या आप अपने आवेदन में छवि यूआरएल संग्रहीत करने या उपयोगकर्ता के लिए इसे पुनर्प्राप्त करने के बारे में सोच रहे हैं?

यदि इसका बाद का विकल्प है तो मुझे छवियों को हॉट-लिंक करने के साथ कोई समस्या दिखाई नहीं दे रही है। यदि आप अपने सिस्टम में छवि यूआरएल का स्थान संग्रहीत कर रहे हैं तो मुझे लगता है कि जब भी छवियां बदलती हैं तो मुझे टूटी हुई लिंक मिलती हैं (मुझे यकीन है कि वे भविष्य में कुछ बिंदुओं पर यूआरएल बदल देंगे)।

संपादित

ठीक है, अब मैं अपनी दुविधा को देखते हैं। मैंने एपीआई दस्तावेज़ों को देखा है और एचटीटीपीएस में छवियों को प्राप्त करने या अमेज़ॅन एस 3 छवि का यूआरएल प्राप्त करने में सक्षम होने के मामले में बहुत अधिक प्रतीत नहीं होता है। आप संभवतः अपने सर्वर पर एक हैंडलर लिख सकते हैं जो अनिवार्य रूप से कैश करेगा & HTTP छवि को HTTPS के रूप में दोबारा सेवा दें, हालांकि आपके सर्वर पर कुछ गैर-नेक्सेसरी लोड है। उस से कम मैं एक बेहतर समाधान में नहीं आया है। जीएल

+0

HTTPS के बारे में मेरा संपादन देखें। मैं इसे पुनर्प्राप्त करने की योजना बना रहा हूं क्योंकि इसकी आवश्यकता है और उन्हें HTTPS AmazonS3 URL के साथ गतिशील रूप से बदलना है। – Franck

1

आप छवि को अपने वेबस्पेस पर क्यों कॉपी करना चाहते हैं? इससे आपकी बैंडविड्थ लागत बढ़ेगी और आपको कैश स्थिरता के मुद्दे मिलेंगे।

एपीआई आपको यूआरएल देता है।

मैं देख सकता हूं कि आप एपीआई कॉल की मात्रा को कम करने के लिए कुछ समय के लिए एपीआई लौटने वाले यूआरएल को कैश करना चाहेंगे।

यदि आप किसी आईफोन ऐप की तरह कुछ लिख रहे हैं, तो वेब ट्रैफ़िक से पूरी तरह से बचने के लिए, स्थानीय रूप से (फ़ोन पर) छवि को कैश करना समझ में आता है, लेकिन एक यूआरएल को किसी अन्य यूआरएल से बदलना कोई फर्क नहीं पड़ता है (माना जाता है कि ट्विटर छवि सर्वर विश्वसनीय रूप से काम करता है)।

आप HTTPS क्यों चाहते हैं?

+0

HTTPS के बारे में मेरा संपादन देखें। काश मैं सीधे यूआरएल का उपयोग कर सकता हूं जो एपीआई मुझे देता है लेकिन मैं ऐसा नहीं कर सकता क्योंकि यह HTTP है। मुझे लगता है कि आप सही हैं, कैशिंग इस के लिए एक अच्छा विचार नहीं है। – Franck

2

चीजें तब से अपडेट होती हैं।

की जांच करें: https://dev.twitter.com/docs/user-profile-images-and-banners

एक प्रोफ़ाइल छवि के लिए SSL सक्षम पथ टेम्पलेट profile_image_url_https में दर्शाया गया है। उपरोक्त तालिका दर्शाती है कि एसएसएल-आधारित छवियों के लिए समान संस्करण चयन तकनीकों को कैसे लागू किया जाए।

संबंधित मुद्दे