我正在学习Django并做一些作业。其中一个要求我编写一个函数echo(request),它将echo参数和头。所以那根绳子
http://127.0.0.1:8000/echo/?a=1
将返回“get a:1语句为空”。信件和价值可能会发生变化,可能会收到或邮寄。如果没有查询字符串参数,它应该只返回'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>