रेफ़रंस गाइड

अहम जानकारी: यह इस पेज का पुराना वर्शन है. नए वर्शन के लिए, बाईं ओर मौजूद नेविगेशन बार में दिए गए लिंक का इस्तेमाल करें.

इस दस्तावेज़ में, Blogger Data API के लिए रॉ प्रोटोकॉल (एक्सएमएल और एचटीटीपी) के बारे में ज़्यादा जानकारी दी गई है.

इस दस्तावेज़ में, प्रोग्रामिंग भाषा के क्लाइंट लाइब्रेरी के बारे में जानकारी नहीं दी गई है. क्लाइंट लाइब्रेरी के बारे में जानकारी पाने के लिए, डेवलपर गाइड के प्रोग्रामिंग भाषा के हिसाब से बने सेक्शन में दिए गए लिंक देखें.

कॉन्टेंट

ऑडियंस

यह दस्तावेज़ उन प्रोग्रामर के लिए है जो ऐसे क्लाइंट ऐप्लिकेशन लिखना चाहते हैं जो Blogger के साथ इंटरैक्ट कर सकें.

यह एक रेफ़रंस दस्तावेज़ है. इसमें यह माना गया है कि आपको डेवलपर गाइड में बताए गए कॉन्सेप्ट और Google Data API प्रोटोकॉल के पीछे के सामान्य आइडिया के बारे में पता है.

Blogger फ़ीड के टाइप

Blogger, फ़ीड में ब्लॉग कॉन्टेंट को दो तरह से दिखाता है: फ़ुल फ़ीड और 'खास जानकारी' फ़ीड. पूरे फ़ीड में ब्लॉग पोस्ट का पूरा कॉन्टेंट होता है, जबकि खास जानकारी वाले फ़ीड में हर पोस्ट का सिर्फ़ एक छोटा स्निपेट होता है.

ब्लॉग का मालिक, जीयूआई सेटिंग का इस्तेमाल करके यह तय कर सकता है कि ब्लॉग, सिंडिकेट करने वालों और एग्रीगेटर को पूरा फ़ीड या खास जानकारी वाला फ़ीड उपलब्ध कराता है.

जब आपका क्लाइंट ऐप्लिकेशन, किसी फ़ीड के लिए पुष्टि न किए गए अनुरोध को भेजता है, तो उसे वह फ़ीड मिलता है जिसे ब्लॉग के मालिक ने तय किया है.

हालांकि, जब आपका क्लाइंट ऐप्लिकेशन पुष्टि वाला अनुरोध भेजता है, तो उसे हमेशा पूरा फ़ीड मिलता है. भले ही, ब्लॉग के मालिक ने कुछ भी तय किया हो.

Blogger के क्वेरी पैरामीटर का रेफ़रंस

Blogger Data API, Google Data API के क्वेरी पैरामीटर के ज़्यादातर स्टैंडर्ड पैरामीटर के साथ काम करता है.

Blogger में q (टेक्स्ट खोज) और author पैरामीटर काम नहीं करते.

updated-min और updated-max क्वेरी पैरामीटर को तब तक अनदेखा किया जाता है, जब तक orderby पैरामीटर को updated पर सेट नहीं किया जाता. उदाहरण के लिए, यह यूआरएल उन सभी ब्लॉग पोस्ट को वापस लाता है जिन्हें 16 मार्च, 2008 से 24 मार्च, 2008 के बीच अपडेट किया गया है:

http://www.blogger.com/feeds/blogID/posts/default?updated-min=2008-03-16T00:00:00&updated-max=2008-03-24T23:59:59&orderby=updated

Blogger एलिमेंट का रेफ़रंस

Blogger Data API सिर्फ़ स्टैंडर्ड ऐटम एलिमेंट का इस्तेमाल करता है. ज़्यादा जानकारी के लिए, ऐटम 1.0 सिंडिकेशन फ़ॉर्मैट स्पेसिफ़िकेशन और ऐटम पब्लिशिंग प्रोटोकॉल देखें.

इस सेक्शन के बाकी हिस्से में, Blogger के कुछ स्टैंडर्ड एलिमेंट के इस्तेमाल के बारे में कुछ खास जानकारी दी गई है.

एंट्री का ड्राफ़्ट

ब्लॉग एंट्री के ड्राफ़्ट को, Atom पब्लिशिंग प्रोटोकॉल दस्तावेज़ में बताए गए <app:draft> एक्सटेंशन एलिमेंट का इस्तेमाल करके मार्क किया जाता है. यहां ड्राफ़्ट की गई एंट्री का उदाहरण दिया गया है:

<entry xmlns:app='http://purl.org/atom/app#'>
...
<app:control>
<app:draft>yes</app:draft>
</app:control>
</entry>

अगर कोई <draft> एलिमेंट नहीं दिया गया है, तो एंट्री ड्राफ़्ट नहीं है.

पब्लिकेशन की तारीखें और अपडेट होने की तारीखें

स्टैंडर्ड Atom <published> एलिमेंट में दिया गया टाइमस्टैंप, "पोस्ट की तारीख" से मेल खाता है. उपयोगकर्ता, Blogger के जीयूआई में इसे सेट कर सकता है.

जब आपका क्लाइंट कोई नई एंट्री बनाता है, तो अगर क्लाइंट <published> के लिए कोई वैल्यू नहीं डालता है, तो Blogger एंट्री पोस्ट करने की तारीख को, सर्वर के मौजूदा समय पर सेट कर देता है. जब आपका क्लाइंट किसी एंट्री में बदलाव करता है, लेकिन <published> वैल्यू नहीं डालता है, तो Blogger एंट्री की पोस्ट की तारीख को बदलता नहीं है.

हालांकि, अगर आपका क्लाइंट किसी एंट्री को बनाते या उसमें बदलाव करते समय, <published> एलिमेंट के लिए कोई वैल्यू तय करता है, तो Blogger उस एंट्री को पोस्ट करने की तारीख को तय की गई वैल्यू पर सेट कर देता है. यह किसी दूसरे ब्लॉगिंग सिस्टम से पुरानी एंट्री इंपोर्ट करने (बनाने की मूल तारीखों को बनाए रखते हुए) जैसे कामों के लिए मददगार हो सकता है.

Blogger, स्टैंडर्ड Atom <updated> एलिमेंट का इस्तेमाल करके यह बताता है कि किसी एंट्री में पिछली बार कब बदलाव किया गया था. आपका क्लाइंट, <updated> वैल्यू को कंट्रोल नहीं कर सकता. जब भी आपका क्लाइंट किसी एंट्री को पोस्ट करता है या उसमें बदलाव करता है, तो Blogger हमेशा एंट्री को अपडेट करने की आखिरी तारीख को सर्वर के मौजूदा समय पर सेट करता है.

Google Data API के स्टैंडर्ड published-min, published-max, updated-min, और updated-max क्वेरी पैरामीटर का इस्तेमाल करके, एंट्री के लिए अनुरोध किया जा सकता है. यह अनुरोध, एंट्री की <published> या <updated> वैल्यू के आधार पर किया जाता है. हालांकि, अपडेट की गई तारीखों पर क्वेरी करने के बारे में नोट के लिए, Blogger के क्वेरी पैरामीटर का रेफ़रंस देखें.

टिप्पणियों को पोस्ट से लिंक करना

Blogger के एक्सपोर्ट फ़ॉर्मैट में, एक ही Atom फ़ीड दस्तावेज़ में पोस्ट और टिप्पणी, दोनों शामिल होती हैं. इन दोनों तरह की एंट्री के बीच अंतर करने के लिए, Blogger <atom:category> एलिमेंट का इस्तेमाल करता है. इस एलिमेंट में एक term पैरामीटर होगा, जिससे पता चलेगा कि एंट्री किसी पोस्ट के लिए है या किसी टिप्पणी के लिए.

इसके अलावा, टिप्पणी वाली एंट्री को उस पोस्ट वाली एंट्री से लिंक करने के लिए, Atom थ्रेडिंग एक्सटेंशन का इस्तेमाल किया जाता है. यहां दिए गए उदाहरण में, टिप्पणी वाली एंट्री में मौजूद <thr:in-reply-to> एलिमेंट, ref पैरामीटर में पोस्ट एंट्री आइडेंटिफ़ायर का इस्तेमाल करके, पोस्ट पर ले जाएगा. यह href पैरामीटर की मदद से, पोस्ट के एचटीएमएल यूआरएल से भी लिंक होता है.

<feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/"
      xmlns:thr="http://purl.org/syndication/thread/1.0">
  ...

  <-- A blog post entry -->
  <entry>
    <id>tag:blogger.com,1999:blog-blogID.post-postID</id>
    <content type="html">This is my first post</content>
    <link rel="alternate" type="text/html"
      href="http://blogName.blogspot.com/2007/04/first-post.html">
    </link>
    <category scheme="http://schemas.google.com/g/2005#kind" 
              term="http://schemas.google.com/blogger/2008/kind#post"/>
    ...
  </entry>

  <-- A comment to the blog post entry -->
  <entry>
    <id>tag:blogger.com,1999:blog-blogID.post-postID.comment-commentID</id>
    <content type="html">This is my first commment</content>
    <category scheme="http://schemas.google.com/g/2005#kind" 
              term="http://schemas.google.com/blogger/2008/kind#comment"/>
    <thr:in-reply-to href="http://blogName.blogspot.com/2007/04/first-post.html" 
                     ref="tag:blogger.com,1999:blog-blogID.post-postID" 
                     type="text/html"/>
    ...
  </entry>
</feed>

वापस सबसे ऊपर जाएं