Google Wallet API की मदद से, आपके उपयोगकर्ता वेब पर मौजूद Google Wallet में कोई ऑब्जेक्ट जोड़ सकते हैं. उपयोगकर्ता, सीधे अपनी वेबसाइट से अपने कार्ड की जानकारी जोड़ सकते हैं.
यह संदर्भ उन HTML तत्व के बारे में विवरण उपलब्ध कराता है जो g:savetoandroidpay
Google वॉलेट API बटन
रेंडर करते हैं. साथ ही JSON वेब टोकन
Google को आपकी वेब सेवा का वर्णन करता है.
Google Wallet API JavaScript
लोड किए गए g:savetoandroidpay
एचटीएमएल टैग को अपने-आप पार्स करने के लिए,
स्टैंडर्ड JavaScript शामिल करें
<script src="https://apis.google.com/js/platform.js" type="text/javascript"></script>
AJAX ऐप्लिकेशन और Google Wallet API बटन के सही रेंडरिंग के लिए, "parsetags": "explicit"
पैरामीटर शामिल करें.
<script src="https://apis.google.com/js/platform.js" type="text/javascript"> {"parsetags": "explicit"} </script>
g:savetoandroidpay
एचटीएमएल टैग
g:savetoandroidpay
नेमस्पेस टैग,
'Google Wallet में जोड़ें' बटन के प्लेसमेंट और
अलग-अलग एट्रिब्यूट के बारे में बताता है. इस टैग का इस्तेमाल तब ही करें, जब एचटीएमएल और JWTs सर्वर साइड को रेंडर किया जा रहा हो.
<g:savetoandroidpay jwt="JWT" onsuccess="successHandler" onfailure="failureHandler" />
फ़ील्ड | टाइप | ज़रूरी है | जानकारी |
---|---|---|---|
height |
स्ट्रिंग | N | बटन की ऊंचाई दिखाएं. संभावित वैल्यू ये हैं: small (30 पिक्सल ऊंची) और
standard (38 पिक्सल ऊंची). height डिफ़ॉल्ट रूप से small पर सेट होता है.
अलग-अलग height सेटिंग वाले बटन के नमूने देखने के लिए, Google Wallet API बटन देखें. |
jwt |
स्ट्रिंग | हां | Google Wallet API JWT. |
onsuccess |
स्ट्रिंग | N | सेव सक्सेस कॉलबैक हैंडलर फ़ंक्शन का स्ट्रिंग नाम. |
onfailure |
स्ट्रिंग | N | सेव न हो पाने वाले कॉलबैक हैंडलर फ़ंक्शन की स्ट्रिंग का नाम. इस फ़ंक्शन को गड़बड़ी वाले ऑब्जेक्ट के तौर पर दिखाया जाता है. इसमें गड़बड़ी कोड और errorMessage होता है. |
onprovidejwt |
स्ट्रिंग | N | JWT हैंडलर फ़ंक्शन उपलब्ध कराने वाली स्ट्रिंग का नाम. इस फ़ंक्शन का मकसद Google वॉलेट में ऑब्जेक्ट जोड़ने से पहले JWT डेटा को रोकने और संभावित रूप से उसमें बदलाव करने का काम करना है.
यह फ़ंक्शन कोई पैरामीटर नहीं लेता. साथ ही, JWT को स्ट्रिंग के तौर पर दिखाना होगा.
इवेंट हैंडलर लागू करते समय, मूल JWT डेटा को फ़ील्ड
this.getOpenParams().renderData.userParams.jwt में वापस लाया जा सकता है. |
size |
स्ट्रिंग | N | दिखाने के लिए बटन की चौड़ाई. size को matchparent पर सेट किया जा सकता है, ताकि चौड़ाई, पैरंट एलिमेंट की चौड़ाई से मेल खाए. इसके अलावा, size
को तय न करें, ताकि text की सेटिंग के हिसाब से चौड़ाई बढ़ जाए.
अलग-अलग size सेटिंग वाले बटन के नमूने देखने के लिए, Google Wallet API बटन देखें. |
text |
स्ट्रिंग | N | बहिष्कृत |
textsize |
स्ट्रिंग | N | textsize=large तय होने पर, खास तौर पर यूज़र इंटरफ़ेस (यूआई) की ज़रूरतों के हिसाब से, टेक्स्ट का साइज़ और बटन का साइज़ बहुत ज़्यादा दिखता है. |
theme |
स्ट्रिंग | N | बटन की थीम. वैल्यू ये हो सकती हैं: dark और
light . डिफ़ॉल्ट थीम dark है. अलग-अलग theme सेटिंग वाले बटन के नमूने देखने के लिए,
Google Wallet API बटन देखें. |
Google Wallet API JWT
Google Wallet API JWT उन ऑब्जेक्ट और क्लास के बारे में बताता है जिन्हें सेव करना है.
प्रोटोकॉल
{ "iss": "example_service_account@developer.gserviceaccount.com", "aud": "google", "typ": "savetoandroidpay", "iat": 1368029586, "payload": { "eventTicketClasses": [{ ... //Event ticket Class JSON }], "eventTicketObjects": [{ // Event ticket Object JSON }], "flightClasses": [{ // Flight Class JSON }], "flightObjects": [{ // Flight Object JSON }], "giftCardClasses": [{ // Gift card Class JSON }], "giftCardObjects": [{ // Gift card Object JSON }], "loyaltyClasses": [{ // Loyalty Class JSON }], "loyaltyObjects": [{ // Loyalty Object JSON }], "offerClasses": [{ // Offer Class JSON }], "offerObjects": [{ // Offer Object JSON }], "transitClasses": [{ // Transit Class JSON }], "transitObjects": [{ // Transit Object JSON }] }, "origins": ["http://baconrista.com", "https://baconrista.com"] }
ध्यान दें: इन JWT को आरएसए-SHA256 का इस्तेमाल करके साइन किया जाता है. साइनिंग कुंजी, OAuth सेवा खाते से जनरेट की गई कुंजी होती है.
फ़ील्ड | टाइप | ज़रूरी है | जानकारी |
---|---|---|---|
iss |
स्ट्रिंग | हां | आपका OAuth 2.0 सेवा खाता जनरेट किया गया ईमेल पता. |
aud |
स्ट्रिंग | हां | दर्शक. Google Wallet API ऑब्जेक्ट के लिए ऑडियंस हमेशा google होगी. |
typ |
स्ट्रिंग | हां | JWT का प्रकार. Google Wallet API ऑब्जेक्ट के लिए ऑडियंस हमेशा savetoandroidpay होगी. |
iat |
पूर्णांक | हां | Epoch के बाद से सेकंड में समय पर जारी होता है. |
payload |
ऑब्जेक्ट | हां | पेलोड ऑब्जेक्ट. |
payload.eventTicketClasses |
कैटगरी | N | सेव करने के लिए इवेंट टिकट क्लास. |
payload.eventTicketObjects |
कैटगरी | N | सेव करने के लिए इवेंट का टिकट ऑब्जेक्ट. |
payload.flightClasses |
कैटगरी | N | फ़्लाइट क्लास. |
payload.flightObjects |
कैटगरी | N | सेव करने के लिए फ़्लाइट ऑब्जेक्ट. |
payload.giftCardClasses |
कैटगरी | N | बचत करने के लिए उपहार कार्ड की श्रेणी. |
payload.giftCardObjects |
कैटगरी | N | सेव करने के लिए, उपहार कार्ड का ऑब्जेक्ट. |
payload.loyaltyClasses |
कैटगरी | N | सेव करें. |
payload.loyaltyObjects |
कैटगरी | N | सेव किया जाने वाला लॉयल्टी ऑब्जेक्ट. |
payload.offerObjects |
कैटगरी | N | सेव करने के लिए ऑब्जेक्ट ऑफ़र करें. |
payload.offerClasses |
कैटगरी | N | बचत करने के लिए ऑफ़र की क्लास. |
payload.transitObjects |
कैटगरी | N | सेव करने के लिए ट्रांज़िट ऑब्जेक्ट. |
payload.transitClasses |
कैटगरी | N | सेव किया जाएगा. |
origins |
कैटगरी | हां | JWT बचत सुविधा के लिए मंज़ूरी देने के लिए डोमेन की श्रेणी. origins फ़ील्ड तय न होने पर, Google Wallet API बटन रेंडर नहीं होगा. ऑरिजिन फ़ील्ड की जानकारी नहीं होने पर,
आपको ब्राउज़र कंसोल में "X-Frame-Options से अस्वीकार किया गया" या "दिखने के लिए अस्वीकार किया गया" मैसेज मिल सकते हैं. |
आपका एन्कोड किया गया JWT नीचे दिए गए उदाहरण के जैसा दिखना चाहिए:
eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJnb29nbGUiLCJvcmlnaW5zIjpbImh0dHA6Ly9sb2NhbGhvc3Q6ODA4MCIsImh0dHA6Ly93d3cuZ29vZ2xlLmNvbSJdLCJpc3MiOiJzMmFwLXRvb2wuZ29vZ2xlLmNvbUBhcHBzcG90LmdzZXJ2aWNlYWNjb3VudC5jb20iLCJpYXQiOjE1NTE5ODcxNTEsInR5cCI6InNhdmV0b3dhbGxldCIsInBheWxvYWQiOnsib2ZmZXJPYmplY3RzIjpbeyJpZCI6IjMyMDI0MTMyNDE4NDM2OTk0MDEuMDFfT2ZmZXJPYmplY3RJZCJ9XX19.maHX40WWT29TC_kEb90EKQBH9AiTYAZR3153K8UI7fznVnfjVdlwsH_GKTECV3PGXdNnKCcmatUbKsONC0bxrnAHYG02kuvA1D3hSctz_amU66ntsvGIDe13mpxTzhI8fPvt9KMP1iaO7uOJuLQIHwipu4uRFAjyFaHGVaSFaP9c53qQyb_Zgyyk50M-MhH2n4kDpstNCqUJKWaadQkOWjrtMjwGzQ_ME04lbR4wb_mfK1A7Rc1UieWkxM9aMl5TOPubBKxKRRk_CqillN8XoTl9MI5RRGPuElVO28zGpYlFS6BarzDaaUfmbRZGvfF8ZiKrHZKxVrJjfZIJ2TCcDw
gapi.savetoandroidpay.render
फ़ंक्शन
यह फ़ंक्शन आपको Google Wallet API बटन को साफ़ तौर पर रेंडर करने की सुविधा देता है.
gapi.savetoandroidpay.render("dom-container",{ "jwt": "JWT", "onsuccess": "successHandler", "onfailure": "failureHandler" });
फ़ील्ड | टाइप | ज़रूरी है | जानकारी |
---|---|---|---|
dom-container |
स्ट्रिंग | हां | Google Wallet API बटन रखने वाले कंटेनर का आईडी. |
jwt |
स्ट्रिंग | हां | सेव किया जाने वाला कॉन्टेंट. |
onsuccess |
स्ट्रिंग | N | सेव सक्सेस कॉलबैक हैंडलर फ़ंक्शन का स्ट्रिंग नाम. |
onfailure |
स्ट्रिंग | N | सेव न हो पाने वाले कॉलबैक हैंडलर फ़ंक्शन की स्ट्रिंग का नाम. इस फ़ंक्शन को गड़बड़ी वाले ऑब्जेक्ट के तौर पर दिखाया जाता है. इसमें गड़बड़ी कोड और errorMessage होता है. |
onprovidejwt |
स्ट्रिंग | N | JWT हैंडलर फ़ंक्शन उपलब्ध कराने वाली स्ट्रिंग का नाम. इस फ़ंक्शन का मकसद Google वॉलेट में ऑब्जेक्ट जोड़ने से पहले JWT डेटा को रोकने और संभावित रूप से उसमें बदलाव करने का काम करना है.
यह फ़ंक्शन कोई पैरामीटर नहीं लेता. साथ ही, JWT को स्ट्रिंग के तौर पर दिखाना होगा.
इवेंट हैंडलर लागू करते समय, मूल JWT डेटा को फ़ील्ड
this.getOpenParams().renderData.userParams.jwt में वापस लाया जा सकता है. |
Google Wallet API के गड़बड़ी कोड और मैसेज
नीचे दिए गए टेबल में, गड़बड़ी के ऑब्जेक्ट में पास हुए गड़बड़ी कोड और डिफ़ॉल्ट गड़बड़ी के मैसेज के बारे में बताया गया है. यह मैसेज तब दिखाया जाता है, जब वे ऑब्जेक्ट JavaScript बटन का इस्तेमाल करके सेव नहीं होते.
{ "errorCode": "errorCode", "errorMessage": "errorMessage" }
errorCode |
errorMessage |
---|---|
SERVICE_FAILURE |
Google वॉलेट सर्वर पर कोई गड़बड़ी आई. |
CLASS_NOT_FOUND |
ऑब्जेक्ट में बताया गया क्लास नहीं मिला. |
CLASS_MISMATCH |
ऑब्जेक्ट का मौजूद होना, उसी तरह का होना ज़रूरी है, और उसे बंद क्लास का रेफ़रंस देना चाहिए. |
ORIGIN_MISMATCH |
ऑरिजिन का बटन, ऑरिजिन की सूची में दिए गए बटन से मेल नहीं खाता. |
INVALID_NUM_TYPES |
ठीक एक प्रकार का ऑब्जेक्ट बताया जा सकता है. |
INVALID_SIGNATURE |
हस्ताक्षर की पुष्टि नहीं की जा सकी. |
INVALID_DUPLICATE_IDS |
डुप्लीकेट ऑब्जेक्ट या क्लास की अनुमति नहीं है. |
INVALID_JWT |
JWT अमान्य. |
INVALID_EXP_IAT |
JWT की समयसीमा खत्म हो गई है या आने वाले समय में जारी किया गया था. |
INVALID_AUD |
AUD फ़ील्ड के लिए अमान्य मान. |
INVALID_TYP |
TYP फ़ील्ड के लिए गलत मान. |
INVALID_NUM_OBJECTS |
लॉयल्टी कार्ड, उपहार कार्ड, और ऑफ़र के लिए सिर्फ़ एक ऑब्जेक्ट और ज़्यादा से ज़्यादा एक क्लास की जानकारी दी जा सकती है. |
MALFORMED_ORIGIN_URL |
यूआरएल का फ़ॉर्मैट सही नहीं है. यूआरएल में प्रोटोकॉल और डोमेन होना चाहिए. |
MISSING_ORIGIN |
शुरुआत की जगह के बारे में बताना ज़रूरी है. |
MISSING_FIELDS |
एनक्लोज़्ड ऑब्जेक्ट या क्लास में ज़रूरी फ़ील्ड नहीं थे. |
स्थानीय भाषा के अनुसार
JavaScript बटन की भाषा इन शर्तों के आधार पर बदलती है:
- अगर उपयोगकर्ता Google में लॉगिन करता है, तो बटन उस भाषा में रेंडर होता है जो उपयोगकर्ता की Google खाता प्रोफ़ाइल में दी गई है. अपने Google खाते की पसंदीदा भाषा बदलने का तरीका जानने के लिए, उपयोगकर्ता भाषा बदलें पढ़ सकता है.
- अगर उपयोगकर्ता Google में लॉग इन नहीं है, तो बटन एचटीटीपी हेडर में
ACCEPT-LANGUAGE
वैल्यू का इस्तेमाल करता है.
अगर आपको लगता है कि बटन ऊपर दिए गए तर्क के मुताबिक सही भाषा में रेंडर नहीं होता है या यह जानकारी गलत है, तो हमारी सहायता टीम से संपर्क करें.