我学习Django和做一些任务。其中之一要求我编写一个函数echo(request),该函数将回显参数和标头。因此,该字符串http://127.0.0.1:8000/echo/?a=1将返回“获得:1的语句是空的”。信和值可能会改变,也可能是GET或POST。如果没有查询字符串参数,则应仅返回“ statement is empty”。并且如果有一个自定义HTTP标头“ X-Print-Statement = test”,则应返回“ statement is test”。我想通了如何做一些,但我有回空GET / POST请求http://127.0.0.1:8000/echo/(我得到一个错误),并传回的HTTP标头现在正确答案的问题。请帮忙。
def echo(request):
return render(request, 'echo.html', context={
'get_letter': request.META['QUERY_STRING'][0],
'get_value': request.GET.get(request.META['QUERY_STRING'][0]),
'get_tag': request.META.get('HTTP_X_PRINT_STATEMENT'),
'request_method': request.META['REQUEST_METHOD']
})
<!--DOCTYPE html -->
<html>
<body>
{% if 'QUERY_STRING' in request.META %}
<h1> {{ request_method }} {{ get_letter }}: {{ get_value }} statement is empty </h1>
{% elif 'HTTP_X_PRINT_STATEMENT' in request.META %}
<h2> statement is {{get_tag}} </h2>
{% endif %}
</body>
</html>