我想从我的django应用程序向付款服务提交一些帖子请求。 是否有一种简单的方法可以在视图中执行此操作然后显示 远程服务而不是我自己的视图(某些像被重定向到远程 包含帖子数据的页面)
目前我正在搞乱一些显示隐藏形式的奇怪方法 ovveridng它的javascript提交调用实现我自己的一些东西,但我想 它过于复杂。
我需要这样的东西:
def view(request, **kwargs):
do_my_own_business()
post_data = create_post_dada(**kwargs)
return post_remote_page("https://example.com", post_data)
答案 0 :(得分:3)
您可以使用python的urllib2向第三方网站发出请求。这实际上是通过代码 - here's a good tutorial来传达您或我访问网站的方式。
如果您想让生活更轻松,可以在urllib2上构建一些库,这样可以更轻松地完成这些外部请求 - 即requests和mechanize。如果您来自PHP背景,您还可以使用pyCurl(不基于urllib2)
请确保您使用的付款服务没有自己的API或库,而不是您可以使用它,因为这比上面的方法更容易和更安全,这主要是屏幕抓取。
此外,请注意,对于您的用户向服务器发出的每个请求,您的服务器都需要进入其他外部服务器,这意味着您可能会超时等,从而在管理连接时引入另一层复杂性。