कार्रवाई के अनुरोधों को हैंडल करना

जैसा कि एलान वाली कार्रवाइयों में बताया गया है, जब कोई उपयोगकर्ता इन-ऐप्लिकेशन कार्रवाई के साथ इंटरैक्ट करता है, तो Google उस यूआरएल पर एक एचटीटीपी अनुरोध भेजता है जिसके बारे में कार्रवाई के बारे में बताया गया है.

यहां दिए गए उदाहरण में, खर्च की रिपोर्ट वाले ईमेल में ConfirmAction बटन जोड़ा गया है:

JSON-LD

<script type="application/ld+json">
{
  "@context": "http://schema.org",
  "@type": "EmailMessage",
  "potentialAction": {
    "@type": "ConfirmAction",
    "name": "Approve Expense",
    "handler": {
      "@type": "HttpActionHandler",
      "url": "https://myexpenses.com/approve?expenseId=abc123"
    }
  },
  "description": "Approval request for John's $10.13 expense for office supplies"
}
</script>

माइक्रोडेटा

<div itemscope itemtype="http://schema.org/EmailMessage">
  <div itemprop="potentialAction" itemscope itemtype="http://schema.org/ConfirmAction">
    <meta itemprop="name" content="Approve Expense"/>
    <div itemprop="handler" itemscope itemtype="http://schema.org/HttpActionHandler">
      <link itemprop="url" href="https://myexpenses.com/approve?expenseId=abc123"/>
    </div>
  </div>
  <meta itemprop="description" content="Approval request for John's $10.13 expense for office supplies"/>
</div>

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

POST /approve?expenseId=abc123 HTTP/1.1
Host: your-domain.com
Authorization: Bearer AbCdEf123456
Content-Type: application/x-www-form-urlencoded
User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/1.0 (KHTML, like Gecko; Gmail Actions)

confirmed=Approved

इस पेज के बाकी हिस्से में बताया गया है कि कार्रवाई को सही तरीके से मैनेज करने के लिए, https://your-domain.com/approve?expenseId=abc123 की सेवा को क्या करना होगा. ऐसे कॉन्टेंट के कुछ उदाहरण यहां दिए गए हैं:

  • अनुरोध की पुष्टि की जा रही है
  • पेलोड प्रोसेस किया जा रहा है
  • रिस्पॉन्स कोड लौटाना

पहला चरण: अनुरोध की पुष्टि करना

https://your-domain.com/approve?expenseId=abc123 पर सेवा को इनकी जांच करने के लिए प्रोत्साहित किया जाता है:

कार्रवाई के सभी अनुरोधों के लिए, उपयोगकर्ता एजेंट Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/1.0 (KHTML, like Gecko; Gmail Actions) है.

अगर सभी जांच पास हो जाती हैं, तो सेवा अगले चरण पर जा सकती है.

दूसरा चरण: कार्रवाई को प्रोसेस करना

सेवा को, यूआरएल पैरामीटर में बताए गए तरीके से कार्रवाई करनी चाहिए. साथ ही, उपयोगकर्ता से इकट्ठा की गई अन्य जानकारी भी देनी चाहिए.

उपयोगकर्ता से मिलने वाली अतिरिक्त जानकारी अनुरोध के मुख्य हिस्से में होती है और उसे x-www-form-urlecoded कोड में बदलने के तरीके का इस्तेमाल करके कोड में बदला जाता है. यह जानकारी उन प्रॉपर्टी में दी गई है जिनके नाम, कार्रवाई की प्रॉपर्टी से मेल खाते हैं. उदाहरण के लिए, ConfirmAction में confirmed प्रॉपर्टी है.

तीसरा चरण: रिस्पॉन्स कोड लौटाना

प्रोसेस होने और कार्रवाई को रिकॉर्ड करने के बाद, सेवा को रिस्पॉन्स कोड 200 (OK) दिखना चाहिए. नीचे दिए गए रिस्पॉन्स कोड, गड़बड़ी वाली स्थितियों में इस्तेमाल किए जा सकते हैं:

उत्तर कोड इलाज
400 (खराब अनुरोध) Google इस कार्रवाई को पूरा नहीं कर पाएगा.
401 (अनधिकृत) Google इस कार्रवाई को पूरा नहीं कर पाएगा.
404 कोड नहीं मिला Google इस कार्रवाई को पूरा नहीं कर पाएगा.
408 (अनुरोध समय खत्म) Google कुछ देर बाद कोशिश करेगा.

अगर ऐसा नहीं होता है, तो Google उपयोगकर्ता को इसकी जानकारी देगा कि कार्रवाई पूरी नहीं हो सकी. साथ ही, उपयोगकर्ता को ईमेल में दिए गए वैकल्पिक निर्देशों का पालन करना होगा.

इसके बारे में और पढ़ें