私はPythonでストライプライブラリを使用してクレジットカードの請求を行っています。私は毎回それを要求せずにカードを再利用したいので、トークンではなく請求の目的でcustomerIDを使用します。成功プロセスは正常に動作しますが、エラー条件を作成すると「例外」がスローされることはありません。無効な顧客IDを使用して障害状態をテストしています。Pythonでストライピングが発生しない充電エラー
サーバーログに「InvalidRequestError:Request req_8949iJfEmeX39p:そのような顧客はありません:22」というエラーが表示されますが、もう一度try/exceptで処理されません。
class ChargeCustomerCard(webapp2.RequestHandler):
def post(self):
stripe.api_key = stripeApiKey
customerID = self.request.get("cust")
amount = self.request.get("amt")
try:
charge = stripe.Charge.create(amount=int(amount),currency="usd",customer=customerID,description=customerID)
except stripe.error.CardError, e:
output = {"result":e}
else:
output = {"result":"1"}
self.response.out.write(json.dumps(output))
特定の 'stripe.error.CardError'の下と' try'ブロックの 'else'の前に' except Exception as e'句を追加し、それがあなたに適切なエラーを与えるかどうかを確認してください。そうであれば、ストライプ固有の例外/エラーでないことを意図していない限り、https://github.com/stripe/stripe-python/issuesで問題を提出することができます。または、ストライプ.error'あなたが 'except'に必要な名前空間 – woozyking
はい、正しいアプローチです。ありがとう。 – C6Silver