Я создал Restfull API на локальном сервере с Flask.
У меня возникают некоторые проблемы с кодированием / декодированием hexas.
Я создал функцию для отладки моей проблемы:
class test_encoding(Resource) :
def get(self,val):
return{'data': val}
api.add_resource(test_encoding,'/testencoding/<val>')
Например, если я использую в качестве запроса в Chrome:
.../testencoding/%23
Я получаю этот ответ (в шестнадцатеричной кодировке):
{"data": "#"}
Но я хочусохрани мою строку, как было написано в Chrome, с %
:
{"data": "%23"}
Я знаю, что мне нужно играть с кодировкой и декодированием, но я совершенно заблудился.Можете ли вы мне помочь?
Заранее спасибо за помощь,
LCMa
ОБНОВЛЕНИЕ
Как я пытался получить URL-адрес благодаряrequest.url и он вернул то же самое «#» вместо «% 23», я понял, что URL автоматически изменяется.Моя идея состоит в том, чтобы затем вернуть URL-адрес запроса, который показан в приглашении:
(base) C:\Users\maell\PycharmProjects\Serveur>python app.py
* Serving Flask app "app" (lazy loading)
* Environment: production
WARNING: Do not use the development server in a production environment.
Use a production WSGI server instead.
* Debug mode: off
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
127.0.0.1 - - [13/Mar/2019 10:02:53] "GET /testencoding/%23 HTTP/1.1" 200 -
Мы видим, что здесь, URL-адрес печатается так, как я хочу.
Но какполучить это из консоли?Возможно ли это?