2013-06-23 16 views
13

प्रिय सबGoogle डिस्क API v2

मैं "पूर्ण पथ" द्वारा दस्तावेजों की एक सूची को खोजने के लिए कोशिश कर रहा हूँ में "पूरा पथ" द्वारा फ़ाइलों को खोजने के लिए सही तरीका है क्या। और एपीआई संदर्भ पढ़ने के बाद, यह एक जटिल कार्य प्रतीत होता है। मेरे पथ मान लें/path0/path1/Path2/...

  1. सूची रूट फ़ोल्डर के बच्चों की तरह कुछ है और सभी बच्चों के नाम के साथ "path0" बराबर है खोजने के लिए और उन्हें एक सूची "result0"
  2. का पता लगाएं करने के लिए रखा "result0" में आइटम के नाम के साथ "path1" बराबर है और उन्हें एक सूची "result1"
  3. डाला "result1" में आइटम के सभी बच्चों का पता लगाएं के साथ नाम "Path2" बराबर है और ...
सभी बच्चों

ऊपर दृष्टिकोण बहुत कम कुशल लगता है क्योंकि इसे मेरे एप्लिकेशन और ड्राइव के बीच कई इंटरैक्शन की आवश्यकता है। मैं समझता हूं कि Google ड्राइव एक ही फ़ोल्डर में एक ही फ़ाइल नाम साझा करने की अनुमति देता है। यह आसान होगा अगर मैं कुछ ऐसा कर सकता हूं:

listDocByFullPath("path0/path1/path2") 

क्या यह Google ड्राइव एसडीके के वर्तमान संस्करण के साथ संभव है? यदि यह अभी तक नहीं है, तो मैं सोच रहा था कि क्या मैंने यहां सूचीबद्ध की तुलना में एक आसान तरीका है।

बीटीडब्ल्यू, क्योंकि मेरा आवेदन पूरी तरह से बैक-एंड सेवा है, Google द्वारा प्रदान की गई फ़ाइल पिकर का उपयोग करना संभव नहीं है।

चीयर्स।

+0

क्या आपको कभी समाधान मिला? मुझे एक ही समस्या का सामना करना पड़ रहा है। –

उत्तर

11

परंपरागत फ़ाइल सिस्टम के विपरीत, फ़ाइल ड्राइव पर एकाधिक फ़ोल्डर्स के तहत हो सकती है। फ़ोल्डर्स बहुत समान हैं जो लेबल हैं। इसलिए, परंपरागत पथ हमेशा हमारे अमूर्तता के भीतर काम नहीं करते हैं। मैं आपको नीचे दिए गए तर्क का पालन करने का सुझाव दूंगा:

  1. q = 'root' in parents and title = 'path0' and mimeType = 'application/vnd.google-apps.folder' के साथ फ़ाइलें सूचीबद्ध करें और पहला परिणाम चुनें।
  2. यदि कोई मिलान परिणाम है, तो फ़ोल्डर की आईडी प्राप्त करें और '<id of path0>' in parents and title = 'path1' and mimeType='application/vnd.google-apps.folder' के साथ एक और लिस्टिंग करें और पहला परिणाम चुनें।
  3. तब तक जारी रखें जब तक कि आप अपने लक्षित फ़ोल्डर तक नहीं पहुंच जाते।
+4

मैं अपने लिए गंतव्य आईडी को हल करने के लिए एक सेवा देखना चाहता हूं। – peter

+3

हाय, बुर्कू आपके उत्तर के लिए धन्यवाद। यह वही है जो मैं अब कर रहा हूं। इस समय ठीक लगता है। हालांकि मैं भविष्य के प्रदर्शन के बारे में चिंतित था। ऐसा लगता है कि मेरे एप्लिकेशन और ड्राइव एपीआई के बीच अंतःक्रियाएं निर्देशिका बढ़ने की गहराई के रूप में रैखिक रूप से बढ़ती हैं। मैंने प्रस्तावित एपीआई वास्तव में चीजों को सरल बना सकते हैं। चीयर्स। –

2

सबसे बड़ी समस्या यह है कि पथ विशिष्ट रूप से फ़ाइल या फ़ोल्डर की पहचान नहीं करता है! उदाहरण के लिए, वेब यूआई में, आप एक ही फ़ोल्डर के बच्चों के रूप में एक ही नाम के साथ 2 फ़ोल्डर्स बना सकते हैं। यानी आप एक पेड़ बना सकते हैं जो दिखता है: root |-somefolder |-somefolder

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