Чтобы разделить некоторые данные между запросами, вы должны хранить их где-то и иметь возможность извлекать их тем или иным способом.Вы не можете действительно использовать глобальные значения для этого (по крайней мере, в приложении wsgi), поскольку один процесс wsgi обслуживает более одного пользователя (поэтому данные user2 перезаписывают данные user1), и у вас обычно есть как минимум полдюжины серверных процессов.(и я говорю о настройке одного сервера здесь), чтобы любой из них мог обслуживать «следующий» запрос данного пользователя, чтобы вы в конечном итоге установили глобальный в одном процессе и попытались прочитать его в другом - что, очевидно,не может работать, поскольку переменные относятся к каждому процессу.
Вот почему кто-то изобрел файлы cookie и сеанс, чтобы разделять более или менее изменчивые данные между запросами.
Если размер вашего файла небольшой (я имею в виду small - максимум пару килобайт, а желательно меньше), вы можете просто сохранить его содержимое в сеансе - ваше упоминание о "Я могуНе используйте сеансы, потому что у меня нет специального ключа для сеанса [ключ] "- это совершенно бессмысленно, объект Django request.session
похож на диктовку, и вы можете установить любой ключ, какой захотите, иначе он будет совершенно бесполезен.
Если это что-то большее, вы бы предпочли записать содержимое файла в известное место в файловой системе и вместо этого сохранить путь в сеансе (сеансы загружаются в память, вы не хотите, чтобы вашоперативная память сервера с гигабайтами пользовательского содержимого).