2012-09-24 14 views
5

मैं एक ऐसा ऐप विकसित कर रहा हूं जो Google Apps Admin को फ़ाइलों पर स्वामित्व को पुन: असाइन करने की क्षमता प्रदान करे। वर्तमान में मैं सी # कोड के साथ .NET के लिए Google ड्राइव एसडीके का उपयोग कर रहा हूं।Google ड्राइव एसडीके अपडेट (हटाएं/डालें) मालिक अनुमति 500 ​​कोशिश करने में त्रुटि डेमो

जब मैं https://developers.google.com/drive/v2/reference/permissions/insert पर Google ड्राइव एसडीके परीक्षण डेमो में प्रमाणीकृत करता हूं और व्यवस्थापक से संबंधित फ़ाइल के FileId भरता हूं और उसी Google Apps डोमेन से दूसरे मालिक को सम्मिलित करने का प्रयास करता हूं तो मुझे 500 आंतरिक सर्वर त्रुटि मिलती है। मैं इन मूल्यों का उपयोग कर रहा:

POST  https://www.googleapis.com/drive/v2/files/0B1Y4_hVm0vbESlZuZHhBemtjcXM/permissions?key={YOUR_API_KEY} 

Content-Type: application/json 
Authorization: Bearer {MY_ACCESSTOKEN} 
X-JavaScript-User-Agent: Google APIs Explorer 

{ 
"role": "owner", 
"type": "user", 
"value": "[email protected]" 
} 

"यह प्रयास करें" डेमो मुझे सेट स्कोप

  • https://www.googleapis.com/auth/drive
  • https://www.googleapis.com/auth/drive.file

    के साथ इस आपरेशन करने के लिए।

मैं प्रयास करें यह डेमो एक ही व्यवस्थापक उपयोगकर्ता के रूप में प्रमाणीकृत का उपयोग करके फ़ाइल पर अनुमतियों की एक सूची प्राप्त करने में सक्षम हूँ, लेकिन मैं नष्ट स्वामी की अनुमतियां की सम्मिलित करने में असमर्थ हूँ।

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

क्या किसी को स्वामित्व अपडेट काम मिल रहा है? यदि ऐसा है तो आप किस उपकरण का उपयोग करते थे?

उत्तर

1

मैंने जांच के लिए हमारे इंजीनियरों के लिए एक आंतरिक बग दायर की, हालांकि, मैं किसी बाहरी डोमेन से किसी उपयोगकर्ता के साथ साझा करने का प्रयास करते समय समस्या को पुन: पेश करने में कामयाब रहा, न कि एक ही डोमेन से।

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

जैसे ही मैं अपनी जांच से वापस सुनता हूं, मैं इस उत्तर को अपडेट कर दूंगा।

+0

बस स्पष्ट होने के लिए, मैं जिस उपयोगकर्ता को स्वामित्व पास करने की कोशिश कर रहा हूं वह उसी Google Apps डोमेन के भीतर है। मैं सोच रहा था कि ऐसा क्यों है क्योंकि यह 'मालिक' है जिसे मैं स्थानांतरित करने की कोशिश कर रहा हूं। अगर मैं दस्तावेज़ का 'स्वामी' नहीं हूं, लेकिन डोमेन का व्यवस्थापक हूं, तो मुझे ऐसा करने में सक्षम होना चाहिए, नहीं? Google डॉक्स एपीआई में मुझे 'मालिक' का प्रतिरूपण करना होगा। Google ड्राइव दस्तावेज़ों का अर्थ यह है कि डोमेन व्यवस्थापक के लिए यह संभव है। –

+0

त्रुटि इस तथ्य के कारण प्रतीत होती है कि एपीआई फ़ाइल के एकमात्र मालिक को हटाने की कोशिश कर रहा है (और फिर नया मालिक बनाएं)।कामकाज के रूप में, क्या आप जांच सकते हैं कि त्रुटि अभी भी होती है यदि आप 1) दस्तावेज़ को अन्य उपयोगकर्ता के साथ लेखक के रूप में साझा करते हैं और फिर 2) अन्य उपयोगकर्ता को स्वामी के रूप में सेट करते हैं? –

+0

मुझे उस उपयोगकर्ता के लिए भूमिका 'मालिक' जोड़ते समय त्रुटि 500 ​​मिल रही थी जो पहले से ही 'लेखक' था। तो वह एक दूसरा मालिक जो एक लेखक था, जोड़ रहा था। एक नया मालिक जोड़ने की तैयारी में एकमात्र मालिक को हटाने का प्रयास करते समय भी मुझे यह मिला। अब, वेब डेमो "इसे आज़माएं" पृष्ठ के माध्यम से, जब मैं '{" भूमिका ":" स्वामी "} के साथ अनुमति अद्यतन का उपयोग करता हूं, और यह उस उपयोगकर्ता पर है जो पहले से ही एक लेखक है, मुझे अभी भी मिलता है त्रुटि 500. मैंने पैच को भी उसी परिणाम के साथ करने की कोशिश की। क्या यह प्रक्रिया अन्य लोगों के लिए काम कर रही है? क्या यह मेरे डोमेन पर कुछ सेटिंग हो सकती है? –

0

स्थानांतरण का उपयोग करऑनर्सशिप ध्वज ने मेरे लिए समस्या हल की।

अजगर API क्लाइंट के साथ, आप कर सकते हैं:

service.permissions().patch(
     fileId=doc.drive_id, permissionId=permission_id, 
     body=patched_permission, transferOwnership=True).execute() 
0

मैं कई महीने पहले एक ही समस्या मिले हैं। और मैंने कल इसे पुनः प्रयास किया और ऐसा लगता है कि अब काम कर रहा है। ऐसा लगता है कि Google इंजीनियर पहले ही समस्या को ठीक कर चुका है।

आशा है कि यह आपके लिए भी काम करना शुरू कर देगा।

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