2016-01-27 8 views
5

मैं सभी https://developers.google.com/google-apps/calendar/v3/push (मुझे लगता है कि) और मैं अपने कॉलबैक URL रजिस्टर करने के लिए घटनाओं को देखने के कोशिश कर रहा हूँ में आवश्यक व्यवस्था, इस कोड के साथ पालन किया है:GoogleAPI NodeJS: calendar.events.watch त्रुटि push.webhookUrlNotHttps हो जाता है या pushWebhookBadDomain

calendar.events.watch({ 

    auth:jwtClient, 
    resource: { 
     id: "yourChannelId", 
     type: 'web_hook', 
     address: "https://api.mysite.com/notifications" 
    }, 
    calendarId: "mycalendarId" 
}, function(error, response) { 
    if (error) { 
     console.log(error); 
     return; 
    } 
    console.log(response); 

}); 

और मुझे त्रुटि message: 'No valid domain for WebHook callback: https://https://api.mysite.com', reason: 'pushWebhookBadDomain' मिलती है। अगर मैं पते को "api.mysite.com/notifications" के रूप में रखने की कोशिश करता हूं (जैसा कि ऐसा लगता है कि https डुप्लीकेट हो रहा है), तो मुझे त्रुटि message: 'WebHook callback must be HTTPS: api.mysite.com/notifications', reason: 'push.webhookUrlNotHttps'

क्या कोई मेरी मदद कर सकता है? धन्यवाद

+0

आप अधिसूचना चैनल बनाने से पहले डेवलपर कंसोल की डोमेन सत्यापन पेज में अपने डोमेन को पंजीकृत करने में सक्षम थे:

कॉल में, यह https और विधि के साथ सही था,? – adjuremods

+0

@adjuremods हां, रूट निर्देशिका में एक HTML के साथ वेबमास्टर्स में पंजीकृत है और फिर मेरी कैलेंडर सेवा के "अनुमत डोमेन" में जोड़ा गया है। क्या इसे जोड़ने के लिए कोई और जगह है? – danielapsmaior

+0

ठीक है, मैं वेबमास्टर्स टूल्स पर वापस गया और मैंने एक त्रुटि देखी "एसएसएल/टीएलएस सर्टिफिकेट में डोमेन नाम शामिल नहीं है," तो शायद यह है कि, जब मैं इसे ठीक करता हूं तो मैं पोस्ट करूंगा। – danielapsmaior

उत्तर

4

मुझे यह काम करने के लिए मिला। मुझे उम्मीद है कि यह किसी की मदद कर सकता है। यहां तरीका है:

on Developers Console, यूआरएल https के बिना होना चाहिए लेकिन विधि के साथ होना चाहिए।

on Webmaster Tools, यूआरएल https के साथ होना चाहिए लेकिन केवल तोपैनिक डोमेन होना चाहिए।

मेरी समस्या यह थी कि डेवलपर कंसोल पर मैंने सभी संभावनाएं (कुल में 4 डोमेन) जोड़ दीं, लेकिन सेवा केवल पहले का उपयोग करती है, जो गलत थी।

resource: { 
    id: "yourChannelId", 
    type: 'web_hook', 
    address: "https://api.mysite.com/notifications" 
} 
+0

HI Daniel, आपके उदाहरण ने मेरी मदद की चीज़ों को हल करने के लिए, मुझे सही तरीके से चैनल मिल जाता है और 'सिंक' संदेश शुरू होता है लेकिन उसके बाद कुछ भी नहीं होता है। क्या आपको पता है कि यह क्या होना चाहिए? यह मेरा प्रश्न यहां पोस्ट किया गया है: http://stackoverflow.com/questions/35434828/google- api-calendar-watch-doesnt-work-but-config-well- – snaggs

+0

बस यह सुनिश्चित करने के लिए, कैलेंडर में आपके परिवर्तन आपकी चैनल की समाप्ति तिथि से पहले होते हैं, है ना? – danielapsmaior

+0

हाँ, मेरा चैनल अद्यतित था, फिर भी यह काम करना शुरू कर दिया, कोई संकेत नहीं है क्यों। Google गड़बड़ की तरह लगता है। धन्यवाद वैसे भी, लेकिन आपके उदाहरण ने मुझे बहुत मदद की – snaggs

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