【问题标题】:How do I return a urllib2 response object from within a Django view?如何从 Django 视图中返回 urllib2 响应对象?
【发布时间】:2014-06-26 00:53:05
【问题描述】:

我知道我可以使用快捷方式模块来简化它,但只是想看看我是否可以手动完成我尝试自己创建并返回一个响应对象但无法让它工作:

import urllib2

def djangoview(request):

    data = '<byte string>'
    open('body.txt', 'wb').write(data)

    headers = {'Content-Type' : 'something', 'Accept' : 'somethingelse'}
    newresponse = urllib2.Request('file:body.txt', None, headers)

    return HttpResponse(newresponse)

【问题讨论】:

  • 解决方案比投反对票更有帮助。

标签: python django urllib2


【解决方案1】:

我不明白你要做什么。这是一个视图的契约,它返回一个 django.http.HttpResponse 的实例——你根本不允许返回任何其他东西。这样做不是捷径,而是必须的。

【讨论】:

  • 是的,我明白了,事实是我只是在学习 urllib2 并在内部试验它或一次性的 django 视图函数。我理解它现在不起作用的原因是因为我在它不起作用的“Django 容器”中。谢谢你:)
  • 嗯,不是真的。 urllib2 在 Django 中运行良好 - 毕竟它只是 Python - 但您需要将结果包装在 HttpResponse 中。
猜你喜欢
  • 2020-01-21
  • 1970-01-01
  • 1970-01-01
  • 2011-09-27
  • 2019-06-30
  • 1970-01-01
  • 2021-12-26
相关资源
最近更新 更多