2016-05-06 13 views
3

Ich habe eine Route, die das Echo an einen URL-Parameter zurückgibt. Wenn ich etwas, das ein Fragezeichen enthält, z. B. /question/What is faster than a speeding bullet? in einem Browser übergeben, enthält der zurückgegebene Wert das Fragezeichen oder nichts dahinter. Flask schneidet den Wert ab, weil er erwartet, dass Abfrageparameter dem Fragezeichen folgen. Wie kann ich einen URL-Wert erfassen, der ein Fragezeichen enthält?Behandle Fragezeichen als Teil der URL in der Flask-Route

@app.route('/question/<value>') 
def read_question(value): 
    return value 

Antwort

0

Zwei Optionen, die ich sehen kann:

  • ignorieren nicht-alphanumerischen Text, um sie in - Komprimieren (siehe: Stapelüberlauf Frage URLS)
  • Prozent encodieren die Fragezeichen als% 3F . Dies ist wahrscheinlich schrecklich und voller potentieller Fehler.