这与这个问题有关: Django 根据客户端 python 返回 json 和 html
我有一个用于 Django 应用程序的命令行 Python API。当我通过 API 访问应用程序时,它应该返回 JSON,并且在浏览器中它应该返回 HTML。我可以使用不同的 URL 来访问不同的版本,但是我如何使用一个模板在 视野,视野中呈现 HTML 模板和 JSON 呢?
要呈现 HTML,我将使用:
return render_to_response('sample/sample.html....')
但是如何在不放置 JSON 模板的情况下对 JSON 执行相同的操作呢?(content-type
应该是 application/json
而不是 text/html
)
什么将决定 JSON 和 HTML 输出?
所以在我的 视野,视野中:
if something:
return render_to_response('html_template',.....)
else:
return HttpReponse(jsondata,mimetype='application/json')