2012-12-22 31 views
7

यह जब Google कैलेंडर API और OAuth2, पाया जा सकता है का उपयोग कर एक 401 त्रुटि के बारे में मेरे धागे से पर का पालन है के माध्यम से एक सेवा खाते का उपयोग करके here403 निषिद्ध संदेश v3 Google कैलेंडर API बुला OAuth 2.0

इसमें खाता सेटअप का विवरण शामिल है जो मेरे अगले प्रश्न पर जाता है, इसलिए मैं इस धागे में खुद को दोहराना नहीं चाहता हूं।

ठीक है, इसलिए जब मैं कैलेंडर ईवेंट को अपडेट करने के लिए निम्न कोड को कॉल करता हूं तो मुझे 403 वर्जित त्रुटि मिलती है।

com.google.api.client.googleapis.json.GoogleJsonResponseException: 403 Forbidden 
{ 
    "code" : 403, 
    "errors" : [ { 
     "message" : "Forbidden" 
    } ], 
    "message" : "Forbidden" 
} 

क्या मैं कोशिश की है:

for (Event event : events.getItems()) 
{ 
    event.setSummary("XXX" + event.getSummary()); 

    Event updatedEvent = calendar.events().update(CALENDAR_ID, event.getId(), event).execute(); 
} 

यहाँ लौटे त्रुटि संदेश है? खैर, मैंने सेवा खातों के बारे में Google दस्तावेज़ों को फिर से पढ़ा है, मेरी एपीआई कंसोल खाता सेटिंग्स को दोबारा जांच लिया है, क्रेडेंशियल बनाने वाले कोड को बदलने की कोशिश की है (इससे अन्य त्रुटियों की ओर इशारा होता है, इसलिए मेरे पिछले धागे पर एक प्रतिगमन होता है) ।

संक्षेप में, कुछ भी काम नहीं करता है, तो क्या कुछ भी स्पष्ट है कि मुझे याद आ रही है?

उत्तर

23

हल, this पोस्ट के लिए धन्यवाद।

आपको Google API कंसोल में जेनरेट की गई सेवा खाता ईमेल के साथ कैलेंडर को अपने Google कैलेंडर खाते से साझा करना होगा, उदा। [email protected]

अब मैं अपने कैलेंडर को अपनी वेब सेवा से अपडेट कर सकता हूं।

+0

hii क्या आप मुझे बता सकते हैं कि मैं कैलेंडर को Google कंसोल से कैसे साझा कर सकता हूं? मैं पहले से ही इस कैलेंडर को अपने एंड्रॉइड कैलेंडर के लिए साझा करता हूं लेकिन कोई समाधान नहीं मिला? अभी भी यह त्रुटि मिली है। – Google

+1

मुझे 403 वर्जित के साथ त्रुटि मिल रही है। जब मैंने अपना कैलेंडर साझा किया तो यह मेरा ईमेल आईडी मालिक के रूप में प्रदर्शित करता है कृपया कॉन्फ़िगर कैसे करें ??? – Sadikhasan

+2

मुझे एक ही समस्या है। समाधान है: 1) कैलेंडर.बिल्डर() के लिए आपके द्वारा सेट किए गए सभी प्रमाण-पत्रों की जांच करें। 2) कैलेंडर को अपने सेवा खाते से साझा करें और सुनिश्चित करें कि "अनुमतियों में परिवर्तन करें" को "अनुमति सेटिंग्स" में चुना गया है। – Emerald214

2

मुझे जस्टिन के उत्तर में कैलेंडर साझा करने के बाद भी वही त्रुटि मिल रही थी। एक और काम कर नमूने के साथ तुलना करने के बाद पता लगा कि मैं

var SCOPES = ["https://www.googleapis.com/auth/calendar"]; 

आशा इस किसी को भी जो एक समान गलती और यह त्रुटि मिलती किया है में मदद करता है के

var SCOPES = ["https://www.googleapis.com/auth/calendar.readonly"]; 

निर्धारित किया है बजाय।