API:FAQ
यह पृष्ठ मीडियाविकि प्रतिक्रिया API प्रलेख का हिस्सा है। |
अवलोकन
इस पृष्ठ पर मीडियाविकि प्रतिक्रिया API के बारे में कुछ अक्सर पूछे जाने वाले प्रश्नों के उत्तर मौजूद हैं। This page is intended for technical contributors and software developers who wish to understand and use the MediaWiki Action API.
API:मुखपृष्ठ भी पढ़ें। यह कुछ अनुत्तरित सवालों के जवाब और दूसरे उपयोगी पृष्ठों की ओर इशारा करता है।
API-ओं के बारे में
एक API क्या है?
API ऐप्लिकेशन प्रोग्रामिंग इंटरफ़ेस का एक संक्षिप्त रूप है। इससे अलग-अलग ऐप्लिकेशन्स एक-दूसरे से संपर्क कर सकते हैं। Sometimes an API allows an application to request an action to be done by the application which implements the API. मीडियाविकि के शब्दों में, यह वेब-आधारित API-ओं को दर्शाता है, जो HTTP अनुरोध-उत्तर तंत्र का इस्तेमाल करके JSON/XML संरचित डेटा का निर्माण करते हैं।
एक REST API क्या है?
REST, REpresentational State Transfer का एक संक्षिप्त रूप है। एक RESTful प्रणाली को कुछ सिद्धांतों और बाधाओं के एक समूह द्वारा परिभाषित किया जाता है।
एक API क्या कर सकता है?
API के कुछ उपयोग देखें।
मैं API-ओं के बारे में और जानकारी कहाँ मिलेगी?
ये रहे कुछ संसाधन:
साधारण
मीडियाविकि प्रतिक्रिया API क्या है?
मीडियाविकि प्रतिक्रिया API एक RESTful वेब सेवा है जिससे सदस्य पृष्ठ निर्माण, प्रमाणीकरण, पार्सिंग, खोज, आदि जैसे विकि-कार्य कर सकते हैं।
मीडियाविकि प्रतिक्रिया API का इस्तेमाल कैसे किया जा सकता है?
मीडियाविकि प्रतिक्रिया API की मदद से:
- विकि की सुविधाओं तक पहुँचा जा सकता है।
- विकि पर कार्य किए जा सकते हैं।
- विकियों और सार्वजनिक सदस्यों के बारे में मेटा-जानकारी प्राप्त की जा सकती है।
दाएँ साइडबार पर API द्वारा समर्थित कई सुविधाओं की कड़ियाँ हैं। और कुछ विकिमीडिया परियोजनाएँ देखें जो मीडियाविकि प्रतिक्रिया API का इस्तेमाल करते हैं।
मैं मीडियाविकि प्रतिक्रिया का इस्तेमाल कैसे करूँ (या इसे कॉल कैसे करूँ)?
आम तौर पर HTTP अनुरोधों की मदद से प्रतिक्रिया API को कॉल किया जाता है। विस्तृत विधि के लिए ट्यूटोरियल पढ़ें।
प्रतिक्रिया API के साथ खिलवाड़ के लिए:
- Special:ApiSandbox का इस्तेमाल करें।
- अपने ब्राउज़र का विकासक कंसोल खोजें और विकि पर कार्य करते हुए
api.php
पर नेट अनुरोधों पर गौर करें।
एक मॉड्यूल, सबमॉड्यूल, और एक पैरामीटर क्या है?
मीडियाविकि प्रतिक्रिया API में कई मॉड्यूल्स हैं जिनसे हम अलग-अलग कार्य कर सकते हैं। तकनीकी शब्दों में, एक मॉड्यूल ApiBase का एक उपवर्ग है। एक मॉड्यूल में पैरामीटर्स की ज़रूरत होती है। ये पैरामीटर्स सबमॉड्यूल्स हो (और न भी हो) सकते हैं।
यह अनुरोध मानें:
यहाँ:
action
main मुख्य मॉड्यूल का एक पैरामीटर है।action=query
एक और मॉड्यूल है। इसे क्वेरी मॉड्यूल कहा जाता है।list
क्वेरी मॉड्यूल का एक पैरामीटर है।list=search
भी एक मॉड्यूल है। इसेaction=query
का एक सबमॉड्यूल कहा जा सकता है।srsearch
खोज मॉड्यूल का एक पैरामीटर है। इसमें खोज स्ट्रिंग 'abc' है।format
मुख्य मॉड्यूल का एक पैरामीटर है।json
आउटपुट का प्रारूप है।
परिचय और दिशानिर्देश भी देखें। इसमें action=query
मॉड्यूल के सबमॉड्यूल्स को वर्णित किया गया है।
मुझे कैसे पता चलेगा कि किस सबमॉड्यूल को कॉल करना है?
मीडियाविकि प्रतिक्रिया API काफ़ी बड़ी है, और एक्सटेंशन्स इसे और भी विस्तृत करते हैं। अपना API अनुरोध गढ़ने के कुछ तरीके हैं:
- साइडबार में वह सुविधा ढूँढ़ें जिसे आप लागू करना चाहते हैं, और कॉल करने के लिए मॉड्यूल्स के बारे में अधिक जानकारी के लिए कड़ी पर क्लिक करें।
- स्वतः प्रलेखित API पृष्ठों संक्षिप्त विवरणों के साथ सभी मॉड्यूल्स और सबमॉड्यूल्स की सूची मौजूद होगी। आप मुख्य मॉड्यूल पर शुरुआत कर सकते हैं और अलग-अलग सबमॉड्यूल्स की कड़ियों पर क्लिक कर सकते हैं। (विस्तृत संस्करण देखने के लिए अंत में
recursivesubmodules=1
जोड़ें)
मुझे API मॉड्यूल्स के उपयोग के लिए कोड के नमूने कहाँ मिलेंगे?
API प्रलेख पृष्ठों पर एक 'उदाहरण' अनुभाग होता है जिसमें दर्शाया जाता है कि अलग-अलग मॉड्यूल्स और सबमॉड्यूल्स का इस्तेमाल कैसे किया जाता है। स्वतः निर्मित प्रलेखों पर भी मॉड्यूल्स के विवरणों के बाद उदाहरण हैं।
Python और जावास्क्रिप्ट में कोड कोड स्निपेट्स देखने के लिए Mediawiki-API-demos देखें।
मैं आउटपुट के प्रारूप को कैसे नियंत्रित करूँ?
आउटपुट का डिफ़ॉल्ट प्रारूप JSON है। आउटपुट के दूसरे प्रारूपों को नवीनतम स्थिर मीडियाविकि संस्करण में कालग्रस्त कर दिया गया या हटा दिया गया है, और इनके उपयोग को हतोत्साहित किया जाता है।
पुराने संस्करणों पर आउटपुट के प्रारूप को नियंत्रित करने के लिए आप क्वेरी स्ट्रिंग में &format=someformat
पास कर सकते हैं।
अधिक जानकारी के लिए API:डेटा प्रारूप देखें।
क्या मुझे किसी पहुँच टोकन की ज़रूरत है?
लॉग-इन करने, सम्पादन, पृष्ठों के स्थानांतरण आदि जैसे डेटा को बदलने वाले कार्यों के लिए आपको एक पहुँच टोकन की ज़रूरत होगी।
अधिक जानकारी के लिए API:Tokens पढ़ें या फिर साइडबार की श्रेणी 'प्रमाणीकरण'।
मैं API की मदद से क्रॉस-साइट अनुरोध कैसे करूँ?
मीडियाविकि पर क्रॉस-साइट अनुरोध करने के लिए आपको JSONP या CORS का इस्तेमाल करना होगा।
विस्तार के लिए API:क्रॉस-साइट अनुरोध देखें।
क्या क्वेरी के परिणामों की कोई सीमा है?
हाँ, यह क्वेरी के पैरामीटर पर निर्भर होता है। उदाहरणस्वरूप, list
और property
के लिए साधारण सदस्यों को अधिकतम 500 परिणाम दिखाए जाएँगे।
API पृष्ठों पर 'अतिरिक्त टिप्पणियाँ' या फिर 'सीमाएँ' अनुभाग में इन सीमाओं के बारे में जानकारी होती है। ध्यान रखें कि कुछ मॉड्यूल्स पर विशिष्ट मामलों में सीमाएँ अधिक कठोर हो सकती हैं।
अगर आपको संदेह है कि सीमा को कितना सेट करना चाहिए, और बस अधिकतम संभव परिणाम चाहिए, सीमा को max
पर सेट करें।
क्या API कॉल्स की कोई सीमा है?
कोई ठोस सीमा नहीं है। मगर अवरोध से बचने के लिए हमारी सलाह है आप कॉल्स को उचित सीमा में रखें। अगर आप कई सारे अनुरोध करना चाहते हैं, पहले ही प्रबंधकों से संपर्क कर लें।
API:शिष्टाचार भी देखें।
मुझे मीडियाविकि प्रतिक्रिया API के बारे में अपडेट्स कैसे मिलेंगे?
आप घोषणाएँ और अपडेट्स प्राप्त करने के लिए MediaWiki-API-Announce मेलिंग सूची में सदस्यता ले सकते हैं।
विकि डम्प्स क्या हैं और मैं इनके साथ काम कैसे करूँ?
विकिमीडिया के डेटा डम्प्स विकियों संग्रहों, सामग्री, मेटाडेटा, खोज इनडेक्स, आदि के डम्प्स हैं। डम्प्स के साथ काम करने के लिए 'डम्प्स का इस्तेमाल करना' और सार्वजनिक डम्प्स देखें।
मुझे और सहायता कहाँ मिलेगी?
अगर आपको मीडियाविकि API प्रलेख या फिर स्वतः निर्मित प्रलेख पृष्ठों पर उत्तर नहीं मिलते, इन साधनों से किसी से संपर्क ज़रूरत करें:
- एक विकिमीडिया खाता बनाएँ (अगर आपके पास पहले से खाता नहीं है) और API चर्चा पृष्ठ पर एक नया विषय जोड़ें।
- अपना सवाल पूछें:
- #mediawiki जुड़ें पर IRC चैनल में।
- MediaWiki-API मेलिंग सूची में.
एक्सटेंशनों के विकासक और विकियों के मालिक
मैं किसी एक्सटेंशन में एक API मॉड्यूल कैसे बनाऊँ?
API:एक्सटेंशन पर एक्सटेंशन में API मॉड्यूल बनाने की पूरी प्रक्रिया बताई गई है।
API की आंतरिक संरचना कैसी है?
API:Implementation Strategy में मीडियाविकि मूल में API तंत्र के कार्यान्वयन की व्याख्या है।
मैं API के उपयोग को सीमित कैसे करूँ?
API के उपयोग को सीमित करने के लिए आप लेखन API के इस्तेमाल को रोक सकते हैं या फिर चुनिंदा मॉड्यूल्स को अक्षम कर सकते हैं।
अनुदेशों और उदाहरणों के लिए 'API:API के उपयोग को सीमित करना' देखें।
त्रुटियाँ और समस्या निवारण
मैं किसी त्रुटि का पता कैसे लगाऊँ?
अगर आपको कोई त्रुटि आती है, API का त्रुटि संदेश, MediaWiki-API-Error
HTTP हैडर सेट कर देगा और एक त्रुटि संरचना लौटाएगा।
इस त्रुटि का मतलब क्या है?
अपनी त्रुटि मानक त्रुटि संदेशों की सूची में ढूँढ़कर पता लगाएँ कि त्रुटि का मतलब क्या है।
मैं कोई बग/सुविधा का अनुरोध कैसे फ़ाइल करूँ?
आप विकिमीडिया के टास्क ट्रैकिंग उपकरण, Phabricator पर बग्स रिपोर्ट कर सकते हैं और सुविधा के अनुरोध फ़ाइल कर सकते हैं।
नोट:
- अपने टास्क पर MediaWiki-API परियोजना टैग जोड़ें।
- अगर आपका रिपोर्ट/अनुरोध किसी एक्सटेंशन द्वारा दिया गया है, उस एक्सटेंशन की परियोजना जोड़ें। (जैसे MediaWiki-extensions-AbuseFilter, MediaWiki-extensions-FlaggedRevs आदि)
- नया टास्क बनाने से पहले नकल ढूँढ़ें।
- आगे बढ़ने से पहले Phabricator पर टास्क के निर्माण की शर्तों को समझें।
अधिक जानकारी के लिए 'किसी बग की शिकायत करें' देखें।
क्या मुझे मेरे API के संस्करण की वजह से त्रुटियाँ आ रही हैं?
अगर किसी वेबसाइट पर मीडियाविकि का कोई दूसरा संस्करण चल रहा हो, उसमें API का भी कोई दूसरा संस्करण चलेगा। किसी एक संस्करण में समर्थित मॉड्यूल्स पैरामीटर्स को दूसरे संस्करणों में कालग्रस्त कर दिया (या हटा दिया) जा सकता है। अगर इन पैरामीटर्स का इस्तेमाल किया जाता है, ये छूट दिखाएँगे। API पृष्ठों पर ये पदावनतियाँ प्रलेखित की जाती हैं।
API के अलग-अलग संस्करणों के लिए प्रकाशन की टिप्पणियाँ देखें।