2012-02-10 86 views
3

我想从我的Django应用程序提交一些POST请求支付服务。 有一个简单的方法来从视图中这样做,然后显示 远程服务,而不是我自己的看法(东西被重定向到远程 页面后数据)如何POST数据到远程服务器,并显示结果

目前,我与一些梅辛和显示隐藏的表单的怪异做法 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) 

回答

3

您可以使用Python的urllib2来做出第三方网站的请求。这基本上是通过代码 - here's a good tutorial来启发您或我访问网站的方式。

如果你想使生活更轻松,有一些库建立在urllib2上,这使得这些外部请求更容易 - 即requestsmechanize。如果您来自PHP背景,您还可以使用pyCurl(不基于urllib2)

请确保您使用的付款服务没有它自己的API或库,您可以改为使用它,因为这将是更容易和更安全,那么上述方法基本上是屏幕抓取。

而且,请注意,为每个请求您的用户向您的服务器,服务器需要做出,这意味着你可能会超时等管理的连接带来复杂性的另一个级别的其他外部服务器。

+1

'requests'库+1 – 2012-02-10 12:11:44

相关问题