Хеш URL (все, что после #
) никогда не отправляется на сервер, браузер удаляет его, сохраняя эту часть URL полностью на стороне клиента.Согласно Wikipedia :
Идентификатор фрагмента функционирует иначе, чем остальная часть URI: его обработка исключительно на стороне клиента без участия веб-сервера , [...].Когда агент (например, веб-браузер) запрашивает веб-ресурс с веб-сервера, агент отправляет URI на сервер , но не отправляет фрагмент.
Это означает, что нет никакого способа извлечь его из бэкэнда, независимо от того, какую платформу вы используете, поскольку ни один из них никогда не получит этот фрагмент данных.
Вместо этого вам нужно использовать параметры запроса, поэтому ваш URL должен выглядетькак это:
https://foo.com/bar?data1=ABC&data2=XYZ
И в этом случае вы сможете получить к ним доступ, используя request.args
:
from flask import request
@app.route('/bar')
def bar():
page = request.args.get('data1', default = '', type = str)
filter = request.args.get('data2', default = 0, type = int)