我的目标是想出一个可移植的urllib2解决方案,它将POST一个表单,然后将用户重定向到出来的东西。 张贴部分很简单:urllib2:提交表单然后重定向
request = urllib2.Request('https://some.site/page', data=urllib.urlencode({'key':'value'}))
response = urllib2.urlopen(request)
提供data
集请求类型为POST。现在,我怀疑我应该关心的所有数据来自response.info()
& response.geturl()
。我应该在webapp.RequestHandler
的get(self)
方法内做self.redirect(response.geturl())
。
但我该怎么处理标题?还有什么我忽略了?代码片段受到高度赞赏。 :)
TIA。
编辑:这是我想出的一个天真的解决方案。重定向,但远程服务器显示一个错误,表示没有匹配到先前提交的表单:
info = response.info()
for key in info:
self.response.headers[key] = info[key]
self.response.headers['Location'] = response.geturl()
self.response.set_status(302)
self.response.clear()
你想重定向到“交出”会议? (这不起作用)。或者你想向用户显示结果? (在这种情况下,你可以代理的HTML) – 2009-10-02 05:18:03
是的,我试图执行“交出”。 – yanchenko 2009-10-03 00:51:27