Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/305.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python URL中的可选参数_Python_Python 3.x_Flask - Fatal编程技术网

Python URL中的可选参数

Python URL中的可选参数,python,python-3.x,flask,Python,Python 3.x,Flask,我有一个端点: @register_endpoint.route('/<string:token>/verify', methods=['GET']) def display_register_form(token): error = None decrypted_token = SecureMessage().decrypt(token) user_data = json.loads(decrypted_token) form = RegisterA

我有一个端点:

@register_endpoint.route('/<string:token>/verify', methods=['GET'])
def display_register_form(token):
    error = None
    decrypted_token = SecureMessage().decrypt(token)
    user_data = json.loads(decrypted_token)
    form = RegisterAccountForm()
    return render_template("auth/account_validation.html", form=form, error=error, user_data=user_data)


@register_endpoint.route('/<string:token>/verify', methods=['POST'])
def register_account():
    form = SignupForm(request.form)
    if form.validate_on_submit():
        email = form.email.data
        first_name = form.first_name.data
        last_name = form.last_name.data
        password = form.password.data
        json_user = json.dumps({"first_name": first_name, "last_name": last_name, "email": email, "password": password})
        response = requests.post("http://0.0.0.0:5000/api/v1/accounts", json=json_user)
        if response.status_code == 200:
            return redirect(url_for('account.signin'))

我怎样才能解决这个问题?我可以将令牌设置为可选的吗?解决我的问题的最佳架构是什么?

可能的重复:@mel尝试将('register.register\u account')的
url\u更改为('register.register\u account',token=form.csrf\u token)
。在您的路由中,令牌是必需的参数。顺便说一句,您忘了将arg令牌添加到
register\u帐户
<form action="{{ url_for('register.register_account') }}" method="post">
        <input name="first_name" class="user" type="text" required="" placeholder="{{ user_data["first_name"] }}" disabled/><br>
        <input name="first_name" class="user" type="text" required="" placeholder="{{ user_data["last_name"] }}" disabled/><br>
        <input name="email" class="user" type="text" required="" placeholder="{{ user_data["email"] }}" disabled/><br>
        <input  placeholder="Password" name="password" class="pass" type="password" required=""><br>
        <input  placeholder="Password verification" name="password_verification" class="pass" type="password" required=""><br>
        {{ form.csrf_token }}
        <input type="submit" value="">
    </form>
Could not build url for endpoint 'register.register_account'. Did you forget to specify values ['token']?