在我的Django应用程序中运行Stripe订阅时出现问题。现在我有这个看法:
def subscribe(request):
customer = stripe.Customer.create(
description = 'This is the test customer',
)
if request.method=='POST':
stripe.Subscription.create(
customer= customer.id,
items = [{"Basic Plan": "prod_HHU1r1fphhhqLt"}]
)
return render(request, 'landing/charge.html')
出现错误:
Request req_69L7P1bcp8iZ1e: Received unknown parameter: items[0][Basic Plan]
这令人困惑,因为该信息直接来自我的条纹计划,所以我知道它存在
(编辑)如果有帮助,这是回溯:
Traceback (most recent call last):
File "/Users/tobiasmuldoon/Dev/python/Environments/web1/lib/python3.8/site-packages/django/core/handlers/exception.py", line 34, in inner
response = get_response(request)
File "/Users/tobiasmuldoon/Dev/python/Environments/web1/lib/python3.8/site-packages/django/core/handlers/base.py", line 115, in _get_response
response = self.process_exception_by_middleware(e, request)
File "/Users/tobiasmuldoon/Dev/python/Environments/web1/lib/python3.8/site-packages/django/core/handlers/base.py", line 113, in _get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "/Users/tobiasmuldoon/Dev/python/Environments/swapp/landing/views.py", line 79, in subscribe
stripe.Subscription.create(
File "/Users/tobiasmuldoon/Dev/python/Environments/web1/lib/python3.8/site-packages/stripe/api_resources/abstract/createable_api_resource.py", line 22, in create
response, api_key = requestor.request("post", url, params, headers)
File "/Users/tobiasmuldoon/Dev/python/Environments/web1/lib/python3.8/site-packages/stripe/api_requestor.py", line 122, in request
resp = self.interpret_response(rbody, rcode, rheaders)
File "/Users/tobiasmuldoon/Dev/python/Environments/web1/lib/python3.8/site-packages/stripe/api_requestor.py", line 373, in interpret_response
self.handle_error_response(rbody, rcode, resp.data, rheaders)
File "/Users/tobiasmuldoon/Dev/python/Environments/web1/lib/python3.8/site-packages/stripe/api_requestor.py", line 152, in handle_error_response
raise err
Exception Type: InvalidRequestError at /subscribe/
Exception Value: Request req_69L7P1bcp8iZ1e: Received unknown parameter: items[0][Basic Plan]```
Im pretty postitive its something simple but Im pretty new to django and cant seem to get it figured out. Thank you!
答案 0 :(得分:3)
您传递了错误的参数。 订阅的创建将使用字典列表,该字典具有带有键“计划”的计划ID。没有名为“基本计划”的参数。因此,为避免该错误,请进行以下更改:
def subscribe(request):
customer = stripe.Customer.create(
description = 'This is the test customer',
)
if request.method=='POST':
stripe.Subscription.create(
customer= customer.id,
items = [{"plan": "prod_HHU1r1fphhhqLt"}]
)
return render(request, 'landing/charge.html')
请注意,在项参数中,键“基本计划”已更改为“计划”。 希望这会有所帮助!