使用openshi快速启动Flask升降箱示例

2024-06-16 10:16:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我无法在openshift平台上成功执行http://flask-dance.readthedocs.org/en/latest/quickstarts/dropbox.html中的示例。在

from flask import Flask, redirect, url_for
from flask_dance.contrib.dropbox import make_dropbox_blueprint, dropbox

app = Flask(__name__)
app.secret_key = "supersekrit"
blueprint = make_dropbox_blueprint(
    app_key="my-key-here",
    app_secret="my-secret-here",
)
app.register_blueprint(blueprint, url_prefix="/login")

@app.route("/")
def index():
    if not dropbox.authorized:
        return redirect(url_for("dropbox.login"))
    resp = dropbox.get("account/info")
    assert resp.ok
    return "You are {email} on Dropbox".format(email=resp.json()["email"])

if __name__ == "__main__":
    app.run()

如果uri尝试使用HTTP-set,而不是使用HTTP-set,则尝试使用

os.environ['OAUTHLIB_INSECURE_TRANSPORT'] = '1'

(我知道这不是安全建议)然后我得到

InvalidClientIdError: (invalid_request) Can't use "Authorization" header and "client_secret" arg together.

在本地和openshift平台上。在

对上面的例子有什么建议吗?在


Tags: keyfromimportappurlflasksecretemail
2条回答

你熟悉如何在openshift上部署基本的flask应用程序吗。这里是一个指向官方openshift文档https://developers.openshift.com/en/python-flask.html和这里https://github.com/openshift-quickstart/flask-base的链接。一旦你启动并运行了openshift flask base应用程序,你就可以通过virtualenv添加额外的dropbox模块来增强它。当您成功地从openshift示例部署应用程序并且它运行时,通过将依赖项放在设置.py公司名称:

from setuptools import setup

setup(name='FlaskApp',
  version='1.0',
  description='A basic Flask app with static files',
  author='Ryan Jarvinen',
  author_email='ryanj@redhat.com',
  url='http://www.python.org/sigs/distutils-sig/',
 install_requires=['Flask>=0.10.1','Flask-Dance'],
 )

然后在烧瓶app.py正如它在你的dropbox指南http://flask-dance.readthedocs.org/en/latest/quickstarts/dropbox.html中的示例所做的那样。在

I'm getting either a transport error (openshift tries to use HTTP uri instead of HTTPS)

尝试访问https://yourApp-namespace.rhcloud.com(而不是http)上的索引,并确保将其配置为Dropbox应用程序的重定向uri之一。在

如果这不起作用,您可以看看this。但是,教程代码适用于OpenShift提供的the flask quick-start。除了上面链接和发布的代码之外,flaskapp.py(即app.config.from_pyfile('flaskapp.cfg'))中必须引用应用程序配置。在

相关问题 更多 >