2012-04-27 3 views
12

मैं Emacs के लिए Google ड्राइव इंटरफ़ेस पर काम कर रहा हूं। अवधारणा यह है कि Emacs Google ड्राइव में संग्रहीत पाठ दस्तावेज़ों को लोड, संशोधित और सहेजने के लिए एक मंच-अज्ञेय तरीका प्रदान कर सकता है। मैंने अपना ऐप पंजीकृत कर लिया है और ओएथ 2 के साथ प्रमाणीकृत कर सकता हूं और डॉक्स लिस्ट एपीआई के साथ फाइल लिस्टिंग प्राप्त कर सकता हूं, लेकिन जब मैं Google ड्राइव एपीआई के साथ एक सम्मिलन निष्पादित करने का प्रयास करता हूं, तो मुझे एक त्रुटि दिखाई देती है:Google ड्राइव एपीआई का उपयोग करते समय मुझे "प्रमाणीकृत उपयोगकर्ता ने क्लाइंट आईडी के साथ ऐप इंस्टॉल नहीं किया है" क्यों मिल रहा है?

"प्रमाणीकृत उपयोगकर्ता के पास है क्लाइंट आईडी के साथ ऐप इंस्टॉल नहीं किया गया ... "

आगे पढ़ना, ऐसा लगता है कि मुझे ड्राइव एपीआई तक पहुंच प्राप्त करने के लिए क्रोम वेब स्टोर में अपने Emacs एप्लिकेशन को प्रकाशित करने की आवश्यकता है। यह मुझे समझ में नहीं आता है ... मैंने देखा कि Google ड्राइव के विकास में एक FUSE परियोजना है, जो बताती है कि मूल विकास संभव है। जब मैंने कोड स्किम किया, हालांकि, मुझे इसे काम करने के लिए क्रोम वेब स्टोर घटक नहीं मिला।

क्या मैं एपीआई का दुरुपयोग करने की कोशिश कर रहा हूं, या क्या यह काम करने के लिए कोई रास्ता है जो अधिक समझ में आता है?

उत्तर

9

संपादित करें:

अली अफसर के मुताबिक, Google डिस्क टीम की स्थापना अब इस एपीआई का उपयोग करने की आवश्यकता है। तो अब क्या प्रासंगिक नहीं हो सकता है, लेकिन ऐतिहासिक उद्देश्यों के लिए छोड़ दिया जाएगा।


तो, सबसे पहले एपीआई अर्थ है कि हम दोनों कर रहे हैं में अनुप्रयोग विकास का समर्थन नहीं करता, मैं शब्द देशी हालांकि का उपयोग नहीं होता। अच्छी खबर यह है कि मैं कुछ शोध कर रहा हूं और Google ड्राइव वास्तव में Google डॉक्स का पुनर्वितरण है। इसलिए Google डॉक्स एपीआई एक ही उद्देश्य के लिए एक अच्छी पसंद हो सकती है।

वैसे भी, त्रुटि को हल करने के लिए यहां दिए गए कदम हैं: "प्रमाणीकृत उपयोगकर्ता ने क्लाइंट आईडी के साथ ऐप इंस्टॉल नहीं किया है ..." इस उत्तर के लिए 403 त्रुटि कौन सा है। ये चरण मानते हैं कि आपने क्रोम वेब स्टोर में एक ऐप सेट अप किया है, और इसे इंस्टॉल किया है। मैं अपनी प्रोजेक्ट के साथ भी अपनी स्थानीय मशीन पर काम कर रहा हूं: http://github.com/tom-dignan/gdrive-cli जो मुझे इस त्रुटि से पहले मिल गया है, इसलिए मुझे लगता है कि आपको अपने एमएक्स संस्करण पर प्लगिंग करना चाहिए, क्योंकि मुझे लगता है कि हम यह काम कर सकते हैं।

ए। Google APIs console खोलें।

बी। पुष्टि करें कि आपने पहले ही "एपीआई एक्सेस" के तहत एपीआई को सक्षम किया है, Google ड्राइव के लिए एपीआई और एसडीके दोनों सक्षम होना चाहिए। वहां आपको अपने ग्राहक रहस्य/एपीआई कुंजी और ऐसे मिलते हैं। मैं लगभग सकारात्मक हूं कि आपने इसे पहले से ही किया है, इसलिए सी पर जाएं (यह उन लोगों के लिए है जो इसे याद कर सकते हैं)

सी।

  1. एक "सहायता URL" जोड़ें (अपेक्षित)

  2. (आवश्यक कम से कम एक छोटे से 16x16 एप्लिकेशन आइकन जोड़ें: के तहत "डिस्क SDK" बाएं नेविगेशन बार में, आपको निम्न कार्य करने की आवश्यकता होगी)

  3. जोड़ें "OAuth क्लाइंट आईडी (आवश्यक)" ड्राइव एकता के तहत (मैं सिर्फ संवारता किया गया था और इस कुंजी क्षेत्र हो रहा है।)

  4. जोड़े "ओपन यूआरएल (Requi लाल) यूआरएल Google ड्राइव यूआई से अपने ऐप के लिए खोलने के लिए।"

  5. चेक बंद" एक से अधिक फ़ाइल समर्थन उदाहरण के लिए पाठ/सादे ", और txt"

  6. कुछ MIME प्रकार और फ़ाइल एक्सटेंशन, जोड़ें "

  7. प्रमाणन स्कोप जोड़ें:

    https://www.googleapis.com/auth/userinfo.email

    https://www.googleapis.com/auth/userinfo.profile

Google डॉक्स के लिए ऑथ स्कॉप्स जोड़ने की कोशिश न करें, क्योंकि यह काम नहीं करेगा। Google नहीं चाहता है कि हम इसे इस तरह उपयोग करें क्योंकि ऐप्स बनाने वाले फ़ाइलें उस ऐप के लिए निजी होनी चाहिए। Google डॉक्स के साथ एकीकरण अलग होना होगा।

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

एक बार जब आप ऊपर कर चुके हैं, तो अपना राज्य साफ़ करें और अपने क्रोम ऐप को पुनर्स्थापित करें। फिर फिर से अपना कोड आज़माएं, और इसे आपको 403 देना बंद करना चाहिए।

+0

इस उत्तर के लिए बहुत बहुत धन्यवाद। मैं आज रात इस सामान को आजमा रहा हूं यह देखने के लिए कि क्या यह मुझे प्रतिष्ठित "404" के बारे में बताता है। =) हालांकि, एक सवाल है। (1) क्रोम या क्रोमियम और (2) का दौरा Chrome वेब स्टोर स्थापित करने और एक अन्यथा व्यर्थ वेब अनुप्रयोग स्थापित करने की आवश्यकता: मैं सही ढंग से समझ, कि यदि मैं अपने ऐप वितरित (शायद GitHub के माध्यम से), जो कोई उपयोग करने के लिए यह होगा चाहता हूँ तो वे लिख रहे Emacs मोड का उपयोग कर सकते हैं? –

+0

हाँ, सही के बारे में लगता है। यह उन डेवलपर्स के लिए सबसे उपयोगी होना चाहिए जो अपने क्रोम स्टोर ऐप्स पर काम कर रहे हैं। तब वे मिलता है और आदि डीबगिंग के लिए फ़ाइलों को डाल करने के लिए उनकी पहचान के साथ हमारे सामान का उपयोग कर सकते –

+0

ठीक है ... मैं इस सवाल का जवाब पसंद नहीं है, लेकिन समय यह समझाने के लिए समय निकालने के लिए धन्यवाद देता हूं। मैं इसके साथ आगे बढ़ जाऊंगा ... –

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