जावा रेस्ट

रीयल-टाइम अपडेट लागू करने के लिए, हमारा Java रीयल-टाइम अपडेट एपीआई क्लाइंट डाउनलोड करें.

पूर्वापेक्षा:

अपना सेवा खाता बनाने के बाद, अपनी निजी कुंजी डाउनलोड करें.

शुरू करें:

  1. ‘मैपबुकिंग’ पैकेज पाने के लिए, Java क्लाइंट लाइब्रेरी को अनज़िप करें और फ़ाइल डाउनलोड करें.
  2. अपने IDE में एक JavaScript प्रोजेक्ट बनाएं, इस रेपो से सैंपल कोड InventoryUpdate.java और BookingNotification.java डाउनलोड करें:

    git clone https://maps-booking.googlesource.com/java-maps-booking-api-example
    

    और उन्हें src डायरेक्ट्री में अपने JavaScript में इंपोर्ट करें.

  3. src डायरेक्ट्री में, अपनी निजी कुंजी (JSON फ़ाइल) की कॉपी बनाएं.
  4. अपने प्रोजेक्ट की डिपेंडेंसी में Java क्लाइंट लाइब्रेरी जोड़ें (Mapsbooking और libs-sources डायरेक्ट्री में जार फ़ाइलें शामिल करें).
  5. दोनों जावा फ़ाइलों में, अपने लागू करने के तरीके को पूरा करने के लिए काम की सूची का पालन करें

REST API के बारे में ज़्यादा जानकारी यहां पाएं.

समस्या का हल:

  1. किसी मौजूदा MerchantId या serviceId के साथ नई व्यापारी/सेवा बनाने की कोशिश करने पर, आपको गड़बड़ी का यह मैसेज मिलेगा:

    409 Conflict
    {
      “code” : 409,
      “errors” :
        [{
            “domain” : “global”,
            “message” : “Requested entity already exists”,
            “reason” : “alreadyExists”,
            “debugInfo” : “detail: "[ORIGINAL ERROR] generic::already_exists: ...”\n"
        }],
      “message” : “Requested entity already exists”,
      “status” : “ALREADY_EXISTS”
    }
    
  2. 'खरीदारी के लिए उपलब्धता' कॉल की जगह किसी अमान्य MerchantId या serviceId का इस्तेमाल करने पर, कॉल करने पर गड़बड़ी का मैसेज नहीं दिखेगा. ऐसा इसलिए होता है, क्योंकि आरटीयू के ज़रिए खरीदारी के लिए उपलब्धता स्लॉट में किए गए बदलावों से, आउट-ऑफ़-ऑर्डर सुविधा काम करती है. इसलिए, इसे किसी MerchantId या serviceId से जोड़ा नहीं जाता. हालांकि, अमान्य MerchantId या serviceId की वजह से अनुरोध में मौजूद स्लॉट प्रोडक्शन में नहीं दिए जाएंगे. स्लॉट का इस्तेमाल करने लायक बनाने के लिए, कृपया आरटीयू या फ़ीड के ज़रिए उस व्यापारी/कंपनी/कारोबारी या सेवा को जोड़ें जो मौजूद नहीं है.
  3. अपडेट करने के सभी फ़ंक्शन में, पैरामीटर 'updateMask' FieldMask फ़ॉर्मैट में होना चाहिए, ताकि वे फ़ील्ड तय कर सकें जिन्हें अपडेट करना है. एपीआई को सिर्फ़ मास्क में बताए गए फ़ील्ड की वैल्यू बदलनी चाहिए और बाकी फ़ील्ड की वैल्यू में कोई बदलाव नहीं करना चाहिए. अगर आपने गलत अपडेटMask स्ट्रिंग पास की है, तो अपडेट लागू नहीं होगा. अगर अपडेट करने के दौरान फ़ील्ड मास्क मौजूद नहीं है, तो कार्रवाई सभी फ़ील्ड पर लागू होती है (जैसे कि सभी फ़ील्ड के लिए एक फ़ील्ड मास्क दिया गया हो). इसलिए, अगर आपको सभी फ़ील्ड अपडेट करने हैं, तो बस updateMask को खाली छोड़ दें.
  4. जवाब में, शून्य वैल्यू वाला कोई भी फ़ील्ड नहीं दिखाया जाता.