Webpay, je ne pense pas que ce soit très populaire, mais j'essaye de l'utiliser pendant un moment.
La documentation semble facile à comprendre, mais elle prend un certain temps à comprendre parce qu'elle essaie.
Les liaisons Python sont fournies (installables avec pip) et sont relativement faciles à demander.
import webpay
client = webpay.WebPay(settings.WEBPAY_SECRET)
response = client.customer.create(card=token)
Comme ça.
Cette variable response
contient le type webpay ʻEntity (
webpay.data_types.Entity`), dont le contenu est similaire à celui d'un dictionnaire, mais chaque valeur est développée en une variable de classe. Je vais. C'est comme un objet JavaScript.
Il est imbriqué, donc essayer de le connecter peut être très ennuyeux.
Pour le moment, __str__
est implémenté et une chaîne de caractères structurée similaire à yaml est renvoyée, mais c'est un peu nerveux car elle comprend des sauts de ligne et ainsi de suite. À moins que vous n'écriviez également un analyseur, il semble moins réutilisable.
Donc. Je pense que ce sera plus facile à gérer si vous le convertissez de manière récursive dans le type de dictionnaire.
from webpay.data_types import Entity
def webpay_entity_to_dict(webpay_entity):
"""
Convertir récursivement le type d'entité Webpay en Dict
"""
if isinstance(webpay_entity, list):
return [webpay_entity_to_dict(e) for e in webpay_entity]
if not isinstance(webpay_entity, Entity):
return webpay_entity
return {key: webpay_entity_to_dict(value) for key, value
in webpay_entity.__dict__.items()}
Si vous le transmettez, vous pouvez en faire un type de dictionnaire, afin de pouvoir le consigner après json.dumps (), ou il sera plus facile à sérialiser.
Recommended Posts