NameError:未定义名称“请求" [英] NameError: name 'request' is not defined

查看:116
本文介绍了NameError:未定义名称“请求"的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我收到了此Python代码,并以某种方式收到了错误消息:

I got this Python Code, and somehow I get the Error Message:

File "/app/identidock.py", line 13, in mainpage
if request.method == 'POST':
NameError: name 'request' is not defined

但是我真的找不到我的错误.有人可以帮我吗?

But I really can't find my mistake. Can someone please help me with that?

from flask import Flask, Response
import requests
import hashlib

app = Flask(__name__)
salt = "UNIQUE_SALT"
default_name = 'test'

@app.route('/', methods=['GET', 'POST'])
def mainpage():

    name = default_name
    if request.method == 'POST':
        name = request.form['name']

    salted_name = salt + name
    name_hash = hashlib.sha256(salted_name.encode()).hexdigest()

    header = '<html><head><title>Identidock</title></head><body>'
    body = '''<form method="POST">
              Hallo <input type="text" name="name" value="{0}">
              <input type="submit" value="Abschicken">
              </form>
              <p> Du siehst aus wie ein: </p>
             <img src="/monster/{1}"/>
           '''.format(name, name_hash)
    footer = '</body></html>'

    return header + body + footer

@app.route('/monster/<name>')
def get_identicon(name):

    r = requests.get('http://dnmonster:8080/monster/' \
        + name + '?size=80')
    image = r.content

    return Response(image, mimetype='image/png')

if __name__ == '__main__':
    app.run(debug=True, host='0.0.0.0')

推荐答案

您似乎忘记了导入flask.request 请求上下文 对象:

You appear to have forgotten to import the flask.request request context object:

from flask import request

这篇关于NameError:未定义名称“请求"的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆