TypeError: объект 'str' не может быть вызван Flask Redirect - PullRequest
0 голосов
/ 08 июня 2018

Я не могу заставить Flask перенаправить!

Я продолжаю получать

File "/Users/kyle.calica-steinhil/Code/wcp2018/wcp18/app/app.py", line 32, in slackRedirect
    return redirect(url)
TypeError: 'str' object is not callable

Я понятия не имею, почему это не работает.Я передаю строку в redirect () Я уверен, что это то, что нужно.

Я также пытался ' до "

Код:

slackAPI='https://slack.com/oauth/authorize'
slack_client_id='XXXXXXXXXXXXXXXX'
scope='bot'
redirect='http://localhost:5000/'

@app.route('/auth')
def slackRedirect():
    url = slackAPI+'?client_id='+slack_client_id+'&scope='+scope+'&redirect_uri='+redirect
    return redirect(url)

Ответы [ 2 ]

0 голосов
/ 08 июня 2018

Проблема, с которой вы сталкиваетесь, связана с конфликтами имен.Ваша переменная уровня модуля redirect фактически переопределяет метод flask.redirect(), который вы пытаетесь использовать:

redirect='http://localhost:5000/'

Переименуйте эту переменную redirect во что-то другое, и ваша проблема будет решена.Предполагается, что вы правильно импортировали метод flask.redirect в свой модуль:

from flask import  redirect
0 голосов
/ 08 июня 2018

Вы переопределяете, что означает redirect .redirect перенаправляет клиента в целевое местоположение, поэтому просто переименуйте redirect во что-то другое, следующую строку:

redirect_url='http://localhost:5000/'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...