महत्वपूर्ण नोट: 2018 के मध्य तक, ट्विटर एपीआई टोकन प्राप्त करने की प्रक्रिया बहुत अधिक नौकरशाही बन गई। मुझे एपीआई टोकन का एक सेट प्रदान करने के लिए एक सप्ताह से अधिक समय लगा है , और यह आप लोगों के लिए एक ओपन सोर्स प्रोजेक्ट है और पैकगिस्ट पर 1.2 मिलियन से अधिक इंस्टालेशन और जीथब पर 1.6k सितारे हैं, जो सैद्धांतिक रूप से उच्च प्राथमिकता होनी चाहिए ।
यदि आपको अपने काम के लिए ट्विटर एपीआई के साथ काम करने का काम सौंपा गया है, तो आपको इस संभावित बेहद लंबे समय के इंतजार को ध्यान में रखना चाहिए। अन्य सोशल मीडिया जैसे फेसबुक या इंस्टाग्राम पर भी विचार करें और इन विकल्पों को प्रदान करें, क्योंकि उनके टोकन प्राप्त करने की प्रक्रिया तत्काल है।
तो आप ट्विटर v1.1 एपीआई का उपयोग करना चाहते हैं?
नोट: इनके लिए फाइलें GitHub पर हैं ।
संस्करण 1.0 जल्द ही पदावनत हो जाएगा और अनधिकृत अनुरोधों की अनुमति नहीं दी जाएगी। तो, यहाँ एक पोस्ट है जो आपकी मदद करने के लिए एक PHP वर्ग के साथ-साथ आपके जीवन को आसान बनाने के लिए करता है।
1. डेवलपर अकाउंट बनाएं: ट्विटर पर खुद को डेवलपर अकाउंट सेट करें
आपको आधिकारिक ट्विटर डेवलपर साइट पर जाने और डेवलपर खाते के लिए पंजीकरण करने की आवश्यकता है। यह v1.1 एपीआई के लिए अनुरोध करने के लिए एक स्वतंत्र और आवश्यक कदम है।
2. एक एप्लिकेशन बनाएं : ट्विटर डेवलपर साइट पर एक एप्लिकेशन बनाएं
क्या? आपने सोचा कि आप बिना मांगे अनुरोध कर सकते हैं? ट्विटर के v1.1 एपीआई के साथ नहीं। आपको http://dev.twitter.com/apps पर जाना होगा और "एप्लिकेशन बनाएँ" बटन पर क्लिक करना होगा।
इस पेज पर, आप जो भी विवरण चाहते हैं, भरें। मेरे लिए, इससे कोई फर्क नहीं पड़ा, क्योंकि मैं सिर्फ स्पैम अनुयायियों से छुटकारा पाने के लिए ब्लॉक अनुरोधों का एक भार बनाना चाहता था। मुद्दा यह है कि आप अपने आप को अपने आवेदन के लिए उपयोग करने के लिए अद्वितीय कुंजी का एक सेट प्राप्त करने जा रहे हैं ।
इसलिए, एप्लिकेशन बनाने का उद्देश्य खुद (और ट्विटर) को कुंजी का एक सेट देना है। य़े हैं:
- उपभोक्ता कुंजी
- उपभोक्ता रहस्य
- पहुंच टोकन
- पहुँच टोकन रहस्य
इन टोकनों के लिए यहाँ पर थोड़ी जानकारी है ।
3. पहुंच टोकन बनाएं : सफल अनुरोध करने के लिए आपको इनकी आवश्यकता होगी
OAuth कुछ टोकन का अनुरोध करता है। इसलिए आपको उन्हें अपने लिए उत्पन्न करने की आवश्यकता है।
सबसे नीचे "मेरा एक्सेस टोकन बनाएं" पर क्लिक करें। फिर एक बार जब आप फिर से नीचे की ओर स्क्रॉल करते हैं, तो आपके पास कुछ नई जनरेट की हुई कुंजियाँ होंगी। आपको अपने एपीआई कॉल के लिए इस पृष्ठ से चार पहले से लेबल की गई कुंजियों को हथियाने की जरूरत है, इसलिए उन्हें कहीं नोट कर लें।
4. प्रवेश स्तर बदलें : आप केवल-पढ़ने के लिए नहीं चाहते हैं, क्या आप?
यदि आप इस एपीआई का कोई सभ्य उपयोग करना चाहते हैं, तो आपको GET अनुरोधों का उपयोग करके मानक डेटा पुनर्प्राप्ति के अलावा कुछ भी करने पर अपनी सेटिंग्स को पढ़ने और लिखने के लिए बदलना होगा ।
पृष्ठ के शीर्ष के पास "सेटिंग" टैब चुनें।
अपने एप्लिकेशन को पढ़ने / लिखने का उपयोग दें, और नीचे "अपडेट" दबाएं।
आप उन एप्लिकेशन अनुमति मॉडल के बारे में अधिक पढ़ सकते हैं जो ट्विटर यहां उपयोग करता है।
5. एपीआई तक पहुंचने के लिए कोड लिखें : मैंने आपके लिए इसका सबसे अधिक उपयोग किया है
मैंने ऊपर दिए गए कोड को कुछ संशोधनों और परिवर्तनों के साथ, एक PHP वर्ग में संयोजित किया है, इसलिए आपको जिन अनुरोधों की आवश्यकता है, उन्हें बनाना वास्तव में सरल है।
इसमें OAuth और Twitter v1.1 API और मेरे द्वारा बनाई गई क्लास का उपयोग किया गया है, जिसे आप नीचे पा सकते हैं।
require_once('TwitterAPIExchange.php');
/** Set access tokens here - see: https://dev.twitter.com/apps/ **/
$settings = array(
'oauth_access_token' => "YOUR_OAUTH_ACCESS_TOKEN",
'oauth_access_token_secret' => "YOUR_OAUTH_ACCESS_TOKEN_SECRET",
'consumer_key' => "YOUR_CONSUMER_KEY",
'consumer_secret' => "YOUR_CONSUMER_SECRET"
);
सुनिश्चित करें कि आपने अपने आवेदन से प्राप्त कुंजियों को उनके संबंधित रिक्त स्थान में रखा है।
अगला आपको एक URL चुनने की आवश्यकता है जिसे आप अनुरोध करना चाहते हैं। ट्विटर उनकी है API दस्तावेज़ आप चुनने में मदद करने जो यूआरएल और भी अनुरोध प्रकार (पोस्ट या जीईटी)।
/** URL for REST request, see: https://dev.twitter.com/docs/api/1.1/ **/
$url = 'https://api.twitter.com/1.1/blocks/create.json';
$requestMethod = 'POST';
दस्तावेज़ीकरण में, प्रत्येक URL बताता है कि आप इसके पास क्या कर सकते हैं। यदि हम ऊपर दिए गए "ब्लॉक" URL का उपयोग कर रहे हैं, तो मैं निम्नलिखित POST पैरामीटर पास कर सकता हूं:
/** POST fields required by the URL above. See relevant docs as above **/
$postfields = array(
'screen_name' => 'usernameToBlock',
'skip_status' => '1'
);
अब जब आप API के साथ क्या करना चाहते हैं, यह सेट हो गया है, तो वास्तविक अनुरोध करने का समय आ गया है।
/** Perform the request and echo the response **/
$twitter = new TwitterAPIExchange($settings);
echo $twitter->buildOauth($url, $requestMethod)
->setPostfields($postfields)
->performRequest();
और एक पोस्ट अनुरोध के लिए, यह बात है!
एक के लिए प्राप्त अनुरोध, यह थोड़ा अलग है। यहाँ एक उदाहरण है:
/** Note: Set the GET field BEFORE calling buildOauth(); **/
$url = 'https://api.twitter.com/1.1/followers/ids.json';
$getfield = '?username=J7mbo';
$requestMethod = 'GET';
$twitter = new TwitterAPIExchange($settings);
echo $twitter->setGetfield($getfield)
->buildOauth($url, $requestMethod)
->performRequest();
अंतिम कोड उदाहरण : मेरे अनुयायियों की सूची के लिए एक सरल GET अनुरोध के लिए।
$url = 'https://api.twitter.com/1.1/followers/list.json';
$getfield = '?username=J7mbo&skip_status=1';
$requestMethod = 'GET';
$twitter = new TwitterAPIExchange($settings);
echo $twitter->setGetfield($getfield)
->buildOauth($url, $requestMethod)
->performRequest();
मैंने GitHub पर इन फाइलों को @ lackovic10 और @ ड्राइवर्स को क्रेडिट के साथ डाला है! मुझे आशा है कि कोई इसे उपयोगी पाता है; मुझे पता है कि मैंने किया (मैंने इसे लूप में बल्क ब्लॉकिंग के लिए इस्तेमाल किया)।
साथ ही, विंडोज पर उन लोगों के लिए जिन्हें एसएसएल सर्टिफिकेट की समस्या हो रही है, इस पोस्ट को देखें । यह लाइब्रेरी हुड के नीचे cURL का उपयोग करती है, इसलिए आपको यह सुनिश्चित करने की आवश्यकता है कि आपके पास शायद अपने cURL सेट हैं। Google भी आपका मित्र है