Как получить значения параметров запроса get в колбе?

Ответ, который я нашел в Интернете, – это использовать request.args.get . Однако я не могу справиться с этим. У меня есть следующий простой пример:

 from flask import Flask app = Flask(__name__) @app.route("/hello") def hello(): print request.args['x'] return "Hello World!" if __name__ == "__main__": app.run() 

Я 127.0.0.1:5000/hello?x=2 в 127.0.0.1:5000/hello?x=2 в свой браузер, и в результате я получаю:

 Internal Server Error The server encountered an internal error and was unable to complete your request. Either the server is overloaded or there is an error in the application. 

Что я делаю не так?

  • Pass Scrapy Spider - список URL-адресов для обхода через .txt-файл
  • from scrapy.selector import selector error
  • как обслуживать загружаемый zip-файл в django
  • Очистка всего текста с помощью Scrapy, не зная структуру веб-страниц
  • Scrapy: Как передать список аргументов через командную строку для паука?
  • Получить только часть XML-фида
  • Django STATIC_URL не работает
  • Scrapy дает URLError: <urlopen error timed out>
  • 2 Solutions collect form web for “Как получить значения параметров запроса get в колбе?”

    Простой ответ заключается в том, что вы не импортировали глобальный объект request из пакета флэков.

     from flask import Flask, request 

    Это легко определить самостоятельно, запустив сервер разработки в режиме отладки, выполнив

     app.run(debug=True) 

    Это даст вам стек, включая:

     print request.args['x'] NameError: global name 'request' is not defined 

    http: // localhost: 5000 / api / iterators / opel / next ? n = 5

    Что-то вроде случая раньше

     from flask import Flask, request n = request.args.get("n") 

    Может сделать трюк

    Python - лучший язык программирования в мире.