JavaScript web düğmesi

Google Cüzdan API'si, kullanıcılarınızın web'den Google Cüzdan'a nesne eklemesine olanak tanır. Kullanıcılar, kartlarını doğrudan web sitenizden ekleyebilir.

Bu referans, şu HTML öğesiyle ilgili ayrıntıları sağlar: g:savetoandroidpay Google Cüzdan API'si düğmesi oluşturur ve JSON Web Jetonu web hizmetinizi Google'a açıklayan bir özettir.

Google Cüzdan API'si JavaScript'i

Yükleme sırasında g:savetoandroidpay HTML etiketlerini otomatik olarak ayrıştırmak için JavaScript

<script src="https://apis.google.com/js/platform.js" type="text/javascript"></script>

AJAX uygulamaları ve Google Cüzdan API düğmelerinin açık bir şekilde oluşturulması için "parsetags": "explicit" parametresini ekleyin.

<script src="https://apis.google.com/js/platform.js" type="text/javascript">
  {"parsetags": "explicit"}
</script>

g:savetoandroidpay HTML etiketi

g:savetoandroidpay ad alanı etiketi yerleşimi ve çeşitli öznitelikleri Google Cüzdan düğmesi. HTML ve JWT'leri oluşturuyorsanız bu etiketi kullanın sunucu tarafıdır.

<g:savetoandroidpay jwt="JWT" onsuccess="successHandler" onfailure="failureHandler" />
Alan Tür Zorunlu Açıklama
height Dize N Görüntülenecek düğmenin yüksekliği. Olası değerler: small (30 piksel yüksekliğinde) ve standard (38 piksel yükseklik). height, varsayılan olarak small değerine ayarlanır. Google Cüzdan API düğmeleri konusuna bakın görmek için farklı height ayarlarına sahip düğme örneklerini görüntüleyin.
jwt Dize Y Google Cüzdan API'si JWT.
onsuccess Dize N Kaydetme başarılı geri çağırma işleyici işlevinin dize adı.
onfailure Dize N Kaydetme hatası geri çağırma işleyici işlevinin dize adı. Bu işlev, errorCode ve errorMessage içeren hata nesnesi.
onprovidejwt Dize N JWT işleyici işlevinin dize adı. Bu işlevin amacı, Nesne Google Cüzdan'a eklenmeden önce JWT verilerine müdahale etmeli ve bu verileri manipüle etmelidir. Bu işlev hiçbir parametre almaz ve JWT'yi Dize olarak döndürmelidir. Olay işleyici uygulanırken orijinal JWT verileri alınabilir this.getOpenParams().renderData.userParams.jwt alanının altına.
size Dize N Gösterilecek düğmenin genişliği. size değerini matchparent olarak ayarlayabilirsiniz öğesini kullanın. İsterseniz size adlı gruptan ayrılabilirsiniz Genişlik, text ayarının genişliğine sığacak şekilde artacak şekilde tanımlanmamıştır. Google Cüzdan API düğmeleri konusuna bakın görmek için farklı size ayarlarına sahip düğme örneklerini görüntüleyin.
text Dize N Kullanımdan kaldırıldı
textsize Dize N textsize=large belirtildiğinde, şu değeri görüntüler: metin boyutu önemli ölçüde arttı ve düğme boyutu (özel kullanıcı arayüzü gereksinimleri olan durumlar için).
theme Dize N Gösterilecek düğmenin teması. Olası değerler: dark ve light. Varsayılan tema dark şeklindedir. Referans Google Cüzdan API düğmeleri görmek için farklı theme ayarlarına sahip düğme örneklerini görüntüleyin.

Google Cüzdan API'si JWT

Google Cüzdan API'si JWT, kaydedilecek nesneleri ve sınıfları tanımlar.

JSON gösterimi

{
  "iss": "example_service_account@developer.gserviceaccount.com",
  "aud": "google",
  "typ": "savetowallet",
  "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"]
}

Alanlar

Alan Tür Zorunlu Açıklama
iss Dize Y Google Cloud hizmet hesabınız tarafından oluşturulan e-posta adresi.
aud Dize Y Kitle. Google Cüzdan API Nesneleri'nin kitlesi her zaman google
typ Dize Y JWT türü. Google Cüzdan API Nesneleri'nin kitlesi her zaman savetowallet
iat Tamsayı Y Dönemden beri, saniye cinsinden belirtilen zamanda verilir.
payload Nesne Y Yük nesnesi.
payload.eventTicketClasses Dizi N Kaydetmek için Etkinlik Bileti Sınıfı.
payload.eventTicketObjects Dizi N Kaydedilecek Etkinlik Bileti Nesnesi.
payload.flightClasses Dizi N Uçuş Sınıfı'nı seçin.
payload.flightObjects Dizi N Kaydedilecek Uçuş Nesnesi.
payload.giftCardClasses Dizi N Kaydetmek için Hediye Kartı Sınıfı.
payload.giftCardObjects Dizi N Kaydedilecek Hediye Kartı Nesnesi.
payload.loyaltyClasses Dizi N Kaydedilecek Bağlılık Sınıfı.
payload.loyaltyObjects Dizi N Kaydedilecek Bağlılık Nesnesi.
payload.offerObjects Dizi N Kaydedilecek Teklif Nesnesi.
payload.offerClasses Dizi N Kaydetmek için Sınıfı teklif edin.
payload.transitObjects Dizi N Kaydedilecek Transit Nesnesi.
payload.transitClasses Dizi N Kaydedilecek Transit Sınıfı.
origins Dizi Y JWT kaydetme işlevi için onaylanacak alan adları dizisi. Google Cüzdan API'si origins alanı tanımlanmadığında düğme oluşturulmaz. Yapabilecekleriniz "Yükleme X-Frame-Options tarafından reddedildi" hatasıyla karşılaşabilirsiniz veya "Görüntülenmesi reddedildi" mesajları kaynak alanı tanımlanmadığında tarayıcı konsolunda çalışır.

Kodlanmış JWT'niz aşağıdaki örneğe benzer olmalıdır:

eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJnb29nbGUiLCJvcmlnaW5zIjpbImh0dHA6Ly9sb2NhbGhvc3Q6ODA4MCIsImh0dHA6Ly93d3cuZ29vZ2xlLmNvbSJdLCJpc3MiOiJzMmFwLXRvb2wuZ29vZ2xlLmNvbUBhcHBzcG90LmdzZXJ2aWNlYWNjb3VudC5jb20iLCJpYXQiOjE1NTE5ODcxNTEsInR5cCI6InNhdmV0b3dhbGxldCIsInBheWxvYWQiOnsib2ZmZXJPYmplY3RzIjpbeyJpZCI6IjMyMDI0MTMyNDE4NDM2OTk0MDEuMDFfT2ZmZXJPYmplY3RJZCJ9XX19.maHX40WWT29TC_kEb90EKQBH9AiTYAZR3153K8UI7fznVnfjVdlwsH_GKTECV3PGXdNnKCcmatUbKsONC0bxrnAHYG02kuvA1D3hSctz_amU66ntsvGIDe13mpxTzhI8fPvt9KMP1iaO7uOJuLQIHwipu4uRFAjyFaHGVaSFaP9c53qQyb_Zgyyk50M-MhH2n4kDpstNCqUJKWaadQkOWjrtMjwGzQ_ME04lbR4wb_mfK1A7Rc1UieWkxM9aMl5TOPubBKxKRRk_CqillN8XoTl9MI5RRGPuElVO28zGpYlFS6BarzDaaUfmbRZGvfF8ZiKrHZKxVrJjfZIJ2TCcDw

gapi.savetoandroidpay.render işlevi

Bu işlev, Google Cüzdan API düğmesini açık bir şekilde oluşturmanıza olanak tanır.

gapi.savetoandroidpay.render("dom-container",{
  "jwt": "JWT",
  "onsuccess": "successHandler",
  "onfailure": "failureHandler"
});
Alan Tür Zorunlu Açıklama
dom-container Dize Y Google Cüzdan API'si düğmesinin yerleştirileceği kapsayıcının kimliği.
jwt Dize Y Kaydedilecek içeriği tanımlayan JWT.
onsuccess Dize N Kaydetme başarılı geri çağırma işleyici işlevinin dize adı.
onfailure Dize N Kaydetme hatası geri çağırma işleyici işlevinin dize adı. Bu işlev, errorCode ve errorMessage içeren hata nesnesi.
onprovidejwt Dize N JWT işleyici işlevinin dize adı. Bu işlevin amacı, Nesne Google Cüzdan'a eklenmeden önce JWT verilerine müdahale etmeli ve bu verileri manipüle etmelidir. Bu işlev hiçbir parametre almaz ve JWT'yi Dize olarak döndürmelidir. Olay işleyici uygulanırken orijinal JWT verileri alınabilir this.getOpenParams().renderData.userParams.jwt alanının altına.

Google Cüzdan API'si hata kodları ve mesajları

Aşağıdaki tablolarda, hatada geçirilen hata kodları ve varsayılan hata mesajları listelenmiştir nesnesini tanımlar.

        {
          "errorCode": "errorCode",
          "errorMessage": "errorMessage"
        }
errorCode errorMessage
SERVICE_FAILURE Google Cüzdan sunucusunda bir hata oluştu.
CLASS_NOT_FOUND Nesnede başvurulan sınıf bulunamadı.
CLASS_MISMATCH Nesne aynı türde olmalı ve eklenen sınıfa referans vermelidir.
ORIGIN_MISMATCH Düğmenin kaynağı, kaynaklar listesinde belirtilenlerle eşleşmiyor.
INVALID_NUM_TYPES Tam olarak bir nesne türü belirtilebilir.
INVALID_SIGNATURE İmza doğrulanamadı.
INVALID_DUPLICATE_IDS Yinelenen nesne veya sınıflara izin verilmez.
INVALID_JWT Geçersiz JWT.
INVALID_EXP_IAT JWT'nin süresi doldu veya gelecekte verildi.
INVALID_AUD AUD alanı için geçersiz değer.
INVALID_TYP TYP alanı için geçersiz değer.
INVALID_NUM_OBJECTS Bağlılık kartları, hediye kartları ve teklifler için tam olarak bir nesne ve en fazla bir sınıf belirtilebilir.
MALFORMED_ORIGIN_URL Bozuk kaynak URL'si. URL bir protokol ve alan adı içermelidir.
MISSING_ORIGIN Kaynak belirtilmelidir.
MISSING_FIELDS Kapalı nesne veya sınıfta zorunlu alanlar eksikti.

Yerelleştirme

JavaScript düğmesindeki dil aşağıdaki ölçütlere göre değişir:

  1. Kullanıcı Google'a giriş yapmışsa düğme, sayfada belirtilen tercih edilen dilde görüntülenir. Kullanıcının Google hesabı profiline. Bir kullanıcı okuyabilir Dili değiştirme seçerek Google Hesabı'nda tercih edilen dili nasıl değiştireceğini öğrenebilirsiniz.
  2. Kullanıcı Google'a giriş yapmamışsa düğme ACCEPT-LANGUAGE değerini kullanır kullanabilirsiniz.

Yukarıdaki mantığa göre düğmenin doğru dilde oluşturulmadığını fark ederseniz veya kullanılan ifade doğal değil, destek ekibimizle bağlantı kurun.