2011-06-09 24 views
5

के साथ Google कस्टम खोज API का उपयोग करना लोगों की खोज प्रोजेक्ट के हिस्से के रूप में मैं वर्तमान में भाग ले रहा हूं, मुझे एक रूबी स्क्रिप्ट लिखनी है जो Google कस्टम खोज API और स्टोर में खोज क्वेरी भेज सकता है प्रसंस्करण के लिए खोज परिणाम। मुझे रुबी google-api-client gem (http://code.google.com/p/google-api-ruby-client/) मिला और इसे इंस्टॉल किया गया, लेकिन, दस्तावेज़ीकरण को पूरी तरह से पढ़ने के बावजूद, मुझे नुकसान हुआ एक कस्टम खोज एपीआई कॉल निष्पादित करने के तरीके के रूप में। यह Google एपीआई का उपयोग करने का मेरा पहला प्रयास है और मैं प्रक्रिया को थोड़ा जबरदस्त कर रहा हूं, क्या वहां कोई भी अनुभव है जो मेरे लिए अध्ययन करने के लिए कुछ नमूना कोड प्रदान कर सकता है? धन्यवादरूबी google-api-client

उत्तर

2

जब मैं इस परीक्षण नहीं किया, कुछ इस तरह काम करना चाहिए:

require 'google/api_client' 
# Creates an instance of the client. 
client = Google::APIClient.new 
# Authorization setup goes here. 
# Fetch the discovery document and obtain a reference to the API we care about. 
search = client.discovered_api('customsearch') 
# Make an API call using a reference to a discovered method. 
response = client.execute(
    search.cse.list, 'q' => 'your query' 
) 
status, headers, body = response 

ध्यान दें कि मैं प्रमाणीकरण, जो आप रूबी ग्राहक के लिए डॉक्स में पा सकते हैं के लिए सभी सेटअप कोड हटा दिया है ।

+0

मुझे लगता है कि मैं जिस क्षेत्र में गिर रहा हूं वह यह है कि मुझे समझ में नहीं आता कि खोज दस्तावेज क्या हैं। उनके बारे में जानने के लिए कोई संसाधन और मुझे उनके साथ क्या करने की ज़रूरत है? –

+0

@ रिचर्ड मुझे लगता है कि आपको मणि दस्तावेज़ों में दिखाए गए प्रश्नों के निर्माण के अलावा उनके साथ कुछ भी करने की आवश्यकता नहीं होगी। ऐसा लगता है कि डिस्कवरी डॉक हैंडलिंग बिट्स सभी मणि में समेकित हैं, लेकिन यहां एक लिंक है जो बताता है कि वे क्या हैं: http://code.google.com/apis/discovery/v1/using.html#discovery-doc –

+0

हाँ , अनिवार्य रूप से, यह एक संसाधन है जो एपीआई को मशीन-पठनीय तरीके से वर्णित करता है। यह क्लाइंट को यह समझने की अनुमति देता है कि एक विशेष एपीआई के लिए एपीआई कॉल कैसे करें। आपको केवल इतना जानने की जरूरत है कि एपीआई के लिए पहचानकर्ता और वह संस्करण जिसे आप खोज दस्तावेज का संदर्भ प्राप्त करने के लिए लक्षित कर रहे हैं। फिर आप विधि संदर्भ प्राप्त करने के लिए इस खोज दस्तावेज़ संदर्भ का उपयोग कर सकते हैं और फिर बाद में उचित पैरामीटर को API कॉल में पास कर सकते हैं। –

0

https://developers.google.com/google-apps/calendar/firstapp

इस API का उपयोग करने के लिए सेटअप हो रही है और गूगल के लिए API कंसोल में कुंजी सेट करने में आपका चलता है। इसमें रूबी के लिए एक टैब है - इसलिए आपको यह शुरू करने की आवश्यकता है।

1

the code abode पर उल्लिखित OAuth के विपरीत एपीआई कुंजी का उपयोग करते समय प्रमाणीकरण के साथ कुछ इन्स और आउट हैं।

क्लाइंट का निर्माण करते समय आपको स्पष्ट रूप से प्राधिकरण param को शून्य पर सेट करना होगा, अन्यथा मणि प्रमाणीकरण के लिए OAuth का उपयोग करने का प्रयास करता है, इसलिए अगर किसी एपीआई कुंजी का उपयोग कर सर्वर से कॉल करना है, तो आपको हमेशा 401 अनधिकृत प्राप्त होगा। कस्टमसेर्च एपीआई का उपयोग कर पूर्ण कोड दिया जाता है (आईआरबी में कॉपी पेस्ट)। the code abode - google-api-client for ruby