Google डिस्क REST एपीआई v3 और कोनालर 2 का उपयोग करके फ़ाइल अपलोड करें और नाम दें




angular google-api (2)

मैं एंगुलर 2 में ड्राइव रेस्त एपीआई वी 3 का उपयोग करके एक Google ड्राइव सेवा का निर्माण कर रहा हूं। अधिकतर कार्यक्षमता जगह में है: देखें फ़ाइल, डाउनलोड करें, आदि बनाएं। लेकिन मुझे कोई फ़ाइल नाम देने का तरीका नहीं मिलता है (या तो कोई फ़ाइल बनाते समय या अद्यतन)।

मैं निम्नलिखित डॉक्स पृष्ठों का उपयोग कर रहा हूं: बनाएं और अपडेट करें वे कहते हैं कि फ़ाइल का नाम अनुरोध निकाय का हिस्सा होना चाहिए। मेरी Google ड्राइव सेवा से प्रासंगिक कोड है

createFile(name :string, content :string) :Promise<Object> {
    let headers = new Headers({
      'Content-Type': 'text/markdown',
      'Authorization': 'Bearer ' + this.token,
      'name': name //TODO name not working!
    });
    let options = new RequestOptions({ headers: headers }); // Create a request option

    return this.http
      .post('https://www.googleapis.com/upload/drive/v3/files' + '?uploadType=multipart', content, options)
      .toPromise();
  }

updateFile(id :string, content :string, name :string) :Promise<Object> {
    let headers = new Headers({
      'Content-Type': 'text/markdown',
      'Authorization': 'Bearer ' + this.token,
      'id': id,
      'name': name //TODO name not working!
    }); //generate headers
    let options = new RequestOptions({ headers: headers }); // Create a request option

    return this.http
      .patch('https://www.googleapis.com/upload/drive/v3/files/' + id + '?uploadType=multipart', content, options)
      .toPromise();
  }

फाइलों को संक्षेप करने के लिए ठीक से (सामग्री सहित) बनाया जा रहा है और अपडेट किया जा रहा है, लेकिन किसी फ़ाइल का नामकरण और उसका नाम बदलना बिल्कुल भी काम नहीं करता है।

किसी भी मदद के लिए धन्यवाद।


आप http शीर्षलेख का उपयोग करके नाम सेट करने का प्रयास कर रहे हैं। ये गलत है। मैं यह समझने के लिए शुरू नहीं कर सकता कि आपको ऐसा करने का तरीका क्या है, इसलिए आपको वापस जाना और ड्राइव एपीआई दस्तावेज़ीकरण को फिर से पढ़ना होगा।

संक्षेप में, name: "name" अनुरोध के मुख्य भाग में एक JSON ऑब्जेक्ट दिया जाना चाहिए, http शीर्षलेख में नहीं।


अनुरोध बॉडी में नाम रखने का प्रयास करें और फाइलों में वर्णित अनुरोध शीर्ष लेख में न बनाएं : बनाएं :

अनुरोध शरीर

  • अनुरोध बॉडी में मेटाडाटा के रूप में निम्न गुणों के साथ एक फाइल संसाधन प्रदान करें। अधिक जानकारी के लिए, मीडिया अपलोड पर दस्तावेज़ देखें।

इसे जांचने के लिए, एपीआई एक्सप्लोरर का उपयोग करके आपको विभिन्न Google एपीआई को इंटरैक्टिव रूप से तलाशने में मदद करें

नमूना अनुरोध:

POST https://www.googleapis.com/drive/v3/files?key={YOUR_API_KEY}

{
"name": "My File"
}

उत्तर:

200

{

"kind": "drive#file",
"id": "fileID",
"name": "My File"
}

एपीआई के माध्यम से Google ड्राइव पर फाइल कैसे सम्मिलित करें, यह भी एक संबंधित SO पोस्ट भी है।

उम्मीद है की यह मदद करेगा।





angular2-services