सदस्यता लिंक करने की सुविधा में, क्लाइंट-साइड JavaScript से
PPID
और पढ़ने वाले के Google खाते के बीच नया असोसिएशन. कॉन्फ़िगर किए गए
पेज दिख रहा है, तो पाठक को एक डायलॉग दिखाया जाएगा. इस डायलॉग बॉक्स में,
की सदस्यता लें. जब पाठक "Google के साथ जारी रखें" पर क्लिक करता है बटन, वे
लिंक करने के लिए खाता चुन सकता है और कॉन्फ़िगर किए गए पेज पर वापस भेज सकता है
पूरा होने पर.
पीपीआईडी को पाठक के खाते से जोड़ने के लिए,
swg.js
में linkSubscription का तरीका. यह पिछले खाते जैसा ही है
लिंक करने की सुविधा (उदाहरण),
लेकिन प्रॉमिस पास करने के बजाय, यह तरीका ऐसे ऑब्जेक्ट को स्वीकार करता है जिसमें
पीपीआईडी.
कोड के उदाहरण
क्लाइंट-साइड कोड के ये उदाहरण बताते हैं कि लिंक कैसे शुरू किया जाए, यह
जवाब कैसा दिखता है और (ज़रूरी नहीं) swg.js
eventManager का इस्तेमाल करके
Analytics से जुड़े इवेंट को ध्यान से सुनें और उन्हें अपनी ज़रूरत के हिसाब से रूट करें.
सदस्यता लिंक करने का डायलॉग शुरू करना
const result = await subscriptions.linkSubscription({publisherProvidedId:6789})
रिस्पॉन्स का उदाहरण
लिंक किए गए खाते के सही जवाबों में, इस्तेमाल किए गए दोनों PPID
शामिल हैं
और एक बूलियन success
स्टेटस है.
console.log(result) //{publisherProvidedId: 6789, success: true}
सदस्यता लिंक करने के लिए, तीसरे पक्ष की कुकी या लोगों के ऐक्टिव Google सेशन की ज़रूरत नहीं होती. यह सुविधाजनक है किसी भी समय, पाठक के पास न कि सिर्फ़ खरीदारी के बाद. अगर किसी पाठक ने लॉग इन नहीं किया है साथ ही, फ़्लो के दौरान उन्हें ऐसा करने का मौका दिया जाता है.
क्लाइंट-साइड का पूरा उदाहरण
<script
async
type="application/javascript"
subscriptions-control="manual"
src="https://news.google.com/swg/js/v1/swg.js">
</script>
<script>
function linkSubscription(ppid) {
self.SWG.push(async (subscriptions) => {
try {
const result = await subscriptions.linkSubscription({
publisherProvidedId: ppid,
})
console.log(result)
} catch(e) {
console.log(e)
}
})
}
document.addEventListener('DOMContentLoaded', function () {
(self.SWG = self.SWG || []).push(subscriptions => {
subscriptions.init("PUBLICATION_ID");
//Configure the event manager for analytics integration
subscriptions.getEventManager().then(manager => {
manager.registerEventListener((event) => {
// Add code here to send the event to your analytics
// sendToAnalytics(event);
console.log(event);
});
});
});
document
.querySelector("SELECTOR")
.addEventListener('click', function(){
linkSubscription(PPID)
})
});
</script>
OAuth क्लाइंट आईडी बनाना
सदस्यता लिंक करने के लिए, OAuth क्लाइंट का इस्तेमाल करना ज़रूरी नहीं है. हालांकि, आपके प्रोजेक्ट के हिसाब से अनुमति वाले डोमेन की सूची बनाने के लिए OAuth क्लाइंट का इस्तेमाल किया जा सकता है.
अनुमति वाले डोमेन, ऐसे डोमेन होते हैं जिनसे आपका क्लाइंट-साइड JavaScript
से कॉल करने की अनुमति है. आपके पब्लिकेशन में पहले से ही OAuth मौजूद हो सकता है
swg.js
के साथ इस्तेमाल करने के लिए, Publisher Center में कॉन्फ़िगर किया गया क्लाइंट आईडी.
- अगर सदस्यता लिंक करने वाला क्लाइंट-साइड JavaScript, उस डोमेन नेम से चल रहा है जिसकी पहले ही पुष्टि हो चुकी है, तो आपको कुछ करने की ज़रूरत नहीं है.
- अगर आपकी JavaScript किसी नए डोमेन नेम से चल रही है, तो SwG OAuth क्लाइंट आईडी कॉन्फ़िगरेशन के निर्देश.
टेस्ट करना
सदस्यता लिंक करने की प्रोसेस के क्लाइंट-साइड लागू होने की जांच करने के लिए, कोड को ऐसे सर्वर से चलाया जाना चाहिए जिसकी javaScript ऑरिजन को अनुमति मिली हो.
- प्रोडक्शन के लिए इस्तेमाल किए जाने के लिए, अनुमति वाले ऑरिजिन, कॉन्फ़िगर किए गए कॉन्फ़िगरेशन में से किसी एक से लिए जा सकते हैं OAuth क्लाइंट या पब्लिकेशन की सेटिंग में, पुष्टि किए गए डोमेन की सूची से Publisher Center में उपलब्ध है.
- बिना पुष्टि वाले डोमेन के डेवलपमेंट या स्टेजिंग में इस्तेमाल के लिए (जैसे, localhost या गैर-सार्वजनिक सर्वर) डोमेन, कॉन्फ़िगर किए गए OAuth में सूचीबद्ध होना चाहिए क्लाइंट.
गड़बड़ियां ठीक करना
क्लाइंट-साइड JavaScript की जांच करते समय सबसे आम समस्या यह है कि
JavaScript चलाने का प्रयास करते समय 403 - Not Authorized
गड़बड़ी. समाधान करने के लिए
इसके बाद, सुनिश्चित करें कि आप JavaScript को
Publisher Center या किसी ऐसे होस्ट पर कोड चलाया जा रहा है जो
लिंक किए गए OAuth क्लाइंट के अनुमति वाले js ऑरिजिन.
अगला चरण
क्लाइंट-साइड JavaScript इंटिग्रेशन पूरा करने पर बधाई. अब तक का डेटा
तो सर्वर-साइड इंटिग्रेशन पर जाएं.
अपने पाठकों के एनटाइटलमेंट सिंक करने के लिए, यह चरण ज़रूरी है. ज़रूरी सर्वर-साइड UpdateReaderEntitlements
फ़ंक्शन को लागू करने और उसका इस्तेमाल करने पर, यह पक्का किया जा सकता है कि सही लेख, सही सदस्यों के लिए हाइलाइट किए जाएं.