Python'da google API kullanarak çok garip bir istisna yapıyorum. Amaç, sunucu tarafında bir Android uygulamasından uygulama içi aboneliğe karşılık gelen bir jetonun geçerliliğini kontrol etmektir.Google API, üretimde geçersiz_grant döndürüyor, ancak yerel değil
Yani bunu yapmak için, bizim Google Play hesabına bağlı bir hizmet hesabı var ve biz (geçişdeyimi çıkarmak için bir PEM sertifika dönüştürülmüş) p12 tuşu aracılığıyla oauth kullanarak talebimizi authentify deneyin:
from apiclient.discovery import build
from httplib2 import Http
from oauth2client.client import SignedJwtAssertionCredentials
with open("googleplay.pem") as f:
private_key = f.read()
credentials = SignedJwtAssertionCredentials(GOOGLE_CLIENT_EMAIL, private_key, scope=['https://www.googleapis.com/auth/androidpublisher'])
http_auth = credentials.authorize(Http())
client = build('androidpublisher', 'v2', http=http_auth)
Ve bu, bilgisayarımda mükemmel çalışıyor. Ancak son satır benim sunucularda bir istisna tetikler: invalid_grant
Bunun nereden geldiğini anlamıyorum! Bununla yardımcı olabilirseniz, harika olurduk!
bir PEM sertifika p12 belgesi dönüştürmek için kullanılan bir ek kod:
openssl pkcs12 -in privatekey.p12 -nodes -nocerts > privatekey.pem
Sonra ilk 4 satırları çıkarıldı.
Şimdiden teşekkürler!
Hum teşekkür umut ama bu benim durum için uygun olduğunu düşünmüyorum. :( – arthur