[python] Django内容类型究竟如何工作?



0 Answers

好的,直接回答你的问题:(来自django源代码)是: 媒体类型解析根据RFC 2616,第3.7节。

这就是说,它读/允许你修改/传递'Content- type'httpd头部。

但是,您需要更多练习用法示例。 我有2个建议给你:

1:检查这个代码

def index(request):
   media_type='text/html'
   if request.META.has_key('CONTENT_TYPE'):
      media_type = request.META['CONTENT_TYPE'].split(';')[0]

   if media_type.lower() == 'application/json':
      return HttpResponse("""{ "ResponseCode": "Success"}""", content_type="application/json; charset=UTF-8")

   return HttpResponse("<h1>regular old joe</h1>");

2:记得django是python,因此它运用了python社区的力量。 有2个令人敬畏的RESTFul插件Django。 所以如果你想看看整个兔子有多深,你可以退房。

我建议通过django-rest-framework教程来解决“专门针对不同内容/类型”的问题。 注意:通常的做法是将内容类型头部用于'version'restful API

Question

我真的很难把握Django内容类型的概念。 它感觉非常黑客,并最终反对Python如何处理事情。 话虽如此,如果我要使用Django,那么我必须在框架的范围内工作。

所以我来这里想知道是否有人可以给出一个实用的真实世界的例子,说明内容类型是如何工作的以及如何实现它。 几乎所有我所查阅的教程(主要是在博客上)都没有真正涵盖这个概念。 他们似乎拿起Django文档离开的地方(似乎没有任何地方)。






Related