def test(request, pku, name): # если мы передаем в атрибут переменную, она попадает как входные параметры, дополнительно с request и попасть она может # или именованая или не именованная, именованая стразу матчится urls /<name>/, неименованная как я понимаю только через # регулярные выражения... print(request.GET.get("nick")) # если в строке запроса браузера будет указано /?nick=rambo, то вернет rambo, eсли нет, то None print(request.GET.get("name")) # если в строке запроса браузера будет указано /?name=petr, то вернет petr, eсли нет, то None print() print(request.encoding) # печатаем сам обьект request, <WSGIRequest: GET '/blog/blog/'> (содержит метод и полный путь без домена) print() print(dir(request)) # все атрибуты request print() print(request.COOKIES) # {'csrftoken': 'BskAsEIPdrzkNobDlf0EzDGZzDkldjrmsEO2p6h9campdU7uRJfs0Rxzju363y23', 'sessionid': 'zqynfq71ddapwu0053y342zte0rfrmha'} print(request.COOKIES.get("csrftoken")) print(request.COOKIES.get("sessionid")) print() print(request.GET) # <QueryDict: {}> Объект с интерфейсом словаря, который содержит HTTP GET параметры. print() print(request.FILES) # <MultiValueDict: {}> print(request.POST) # <QueryDict: {}> print(request.user) # Zohan Добавляется AuthenticationMiddleware: содержит объект AUTH_USER_MODEL представляющий текущего пользователя. print(request.session) print(request.META.get("SERVER_PORT")) print(request.get_full_path()) resp = HttpResponse("Hello {} {}".format(pku, name)) # можно добавить в ответ как в словарь что то resp["name"] = "zohan" resp["age"] = 36 print(resp.get("age")) return resp