使用Django的Render()呈现JSON响应

2024-05-18 23:44:12 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在学习Django的教程,但未能使用Django的render()函数显示API响应。

型号.py

...
class MF_Version():
    def get_MF_Version(self):
        url = 'https://www.mediafire.com/api/1.5/system/get_version.php?response_format=json'
        r = requests.get(url)
        return r
...

视图.py

...
def view_Version(request):
    hr = HttpResponse(MF_Version().get_MF_Version())
    return render(request, 'mediafire/version.html', {'hr': hr})
    # return hr
...

版本.html

{% if 1 %}
    {{ hr }}
{% endif %}

浏览器输出:

<HttpResponse status_code=200, "text/html; charset=utf-8">

MefiaFire响应:

{"response":{"action":"system\/get_version","current_api_version":"1.5","result":"Success"}}

如果我在view.py文件中注释掉return render(...),并将其替换为return hr,我确实看到了来自MediaFire的JSON响应,但是我无法理解如何访问HTML模板中的actioncurrent_api_versionresult

如有任何帮助,我们将不胜感激。


Tags: djangopyapiurlgetreturnversiondef

热门问题