अपना प्लैटफ़ॉर्म चुनें:
Google Analytics मेज़रमेंट प्रोटोकॉल, HTTP
गड़बड़ी कोड नहीं दिखाता. भले ही, कोई इवेंट गलत तरीके से बनाया गया हो या उसमें ज़रूरी पैरामीटर मौजूद न हों. यह पक्का करने के लिए कि आपके इवेंट मान्य हैं, आपको उन्हें प्रोडक्शन में डिप्लॉय करने से पहले, मेज़रमेंट प्रोटोकॉल के पुष्टि करने वाले सर्वर के साथ टेस्ट करना चाहिए.
यह पुष्टि करने के बाद कि आपके इवेंट सही तरीके से स्ट्रक्चर्ड हैं, आपको लागू करने की पुष्टि करनी चाहिए. इससे यह पक्का होता है कि सही कुंजियों का इस्तेमाल किया जा रहा है.
पुष्टि करने वाले सर्वर को सीधे कॉल किया जा सकता है या Google Analytics इवेंट बिल्डर का इस्तेमाल किया जा सकता है. Google Analytics इवेंट बिल्डर की मदद से, इंटरैक्टिव तरीके से इवेंट बनाए जा सकते हैं. साथ ही, इवेंट की पुष्टि करने के लिए, मेज़रमेंट प्रोटोकॉल की पुष्टि करने वाले सर्वर का इस्तेमाल किया जा सकता है.
इस गाइड में, Google Analytics 4 के पुष्टि करने वाले सर्वर के लिए, मेज़रमेंट प्रोटोकॉल में इवेंट भेजने और जवाब का विश्लेषण करने का तरीका बताया गया है.
पुष्टि के लिए इवेंट भेजना
मेज़रमेंट प्रोटोकॉल और मेज़रमेंट प्रोटोकॉल की पुष्टि करने वाले सर्वर को भेजे गए इवेंट के अनुरोध में सिर्फ़ यूआरएल का अंतर होता है.
सर्वर | URL |
---|---|
मेज़रमेंट प्रोटोकॉल | /mp/collect |
मेज़रमेंट प्रोटोकॉल की पुष्टि करने वाला सर्वर | /debug/mp/collect |
अनुरोध के अन्य सभी फ़ील्ड एक जैसे होते हैं. मान्य अनुरोध बनाने के बारे में पूरी जानकारी के लिए, प्रोटोकॉल रेफ़रंस देखें.
यहां दिए गए कोड में, मेज़रमेंट प्रोटोकॉल की पुष्टि करने वाले सर्वर पर भेजा गया अमान्य इवेंट दिखाया गया है:
const firebase_app_id = `X:XX:XX:XX`;
const api_secret = `<secret_value>`;
fetch(`https://www.google-analytics.com/debug/mp/collect?firebase_app_id=${firebase_app_id}&api_secret=${api_secret}`, {
method: "POST",
body: JSON.stringify({
app_instance_id: 'app_instance_id',
events: [{
// Event names must start with an alphabetic character.
name: '_badEventName',
params: {},
}]
})
});
पुष्टि करने का जवाब
पुष्टि करने वाले सर्वर का पिछले इवेंट के लिए दिया गया जवाब यहां दिया गया है:
{
"validationMessages": [
{
"fieldPath": "events",
"description": "Event at index: [0] has invalid name [_badEventName]. Names must start with an alphabetic character.",
"validationCode": "NAME_INVALID"
}
]
}
पुष्टि करने वाले सर्वर से मिले उस अनुरोध का रिस्पॉन्स यहां दिया गया है जिसमें पुष्टि से जुड़ी कोई समस्या नहीं है:
{
"validationMessages": []
}
जवाब
कुंजी | टाइप | ब्यौरा |
---|---|---|
validationMessages |
Array<ValidationMessage> | पुष्टि करने वाले मैसेज का कलेक्शन. |
ValidationMessage
कुंजी | टाइप | ब्यौरा |
---|---|---|
fieldPath |
स्ट्रिंग | उस फ़ील्ड का पाथ जो अमान्य था. |
description |
स्ट्रिंग | गड़बड़ी की जानकारी. |
validationCode |
ValidationCode | गड़बड़ी से जुड़ा पुष्टि करने वाला कोड. |
ValidationCode
मान | ब्यौरा |
---|---|
VALUE_INVALID |
fieldPath के लिए दी गई वैल्यू अमान्य थी. सीमाएं देखें.
|
VALUE_REQUIRED |
fieldPath के लिए ज़रूरी वैल्यू नहीं दी गई. |
NAME_INVALID |
दिया गया नाम अमान्य था. सीमाएं देखें. |
NAME_RESERVED |
आपने जो नाम दिया है वह पहले से रिज़र्व है. रिज़र्व किए गए नाम देखें. |
VALUE_OUT_OF_BOUNDS |
दी गई वैल्यू बहुत बड़ी थी. सीमाएं देखें. |
EXCEEDED_MAX_ENTITIES |
अनुरोध में बहुत ज़्यादा पैरामीटर थे. सीमाएं देखें. |
NAME_DUPLICATED |
अनुरोध में एक ही नाम एक से ज़्यादा बार दिया गया है. |