我正在尝试构建允许人们为他们从我的网站获得的服务付费的代码。我已经使用 django 中可用的 forms.Form 模型构建了表单。我还使用以下模式来构建我的视图。
if request.method == 'POST'
form = ContactForm(request.POST)
if form.is_valid(): # All validation rules pass
conn = urllib2.Request(payment_gateway_url,urllib.urlencode(my_dat_in_dict))
f= urrlib2.urlopen(conn)
all_results=f.read()
return HttpResponseRedirect('/thanks/') # Redirect after POST
else:
form = ContactForm() # An unbound form
return render(request, 'contact.html', {
'form': form,
})
我面临的问题是我的表单提交正常,支付网关用一大堆 html 回复我,帮助用户在响应此表单 POST 时选择信用卡详细信息等(我不是的详细信息在我的网站上收集)。我可以在 all_results (f.read()) 中看到这一点。
我的问题是我如何向用户显示此页面,因为我是通过我的表单 POST 得到的。我是否应该将此响应保存在 html 文件中并将 HTTPResponse 重定向到该页面。我假设 HTTPResponseRedirect 更适合完整的事务,而不是中间响应。
那么,基本上我该如何处理用户将被发送到支付网关站点然后在完成程序后返回我的站点的情况?
谢谢