Я не могу успешно выполнить пример с http://flask-dance.readthedocs.org/en/latest/quickstarts/dropbox.html на платформе с открывающейся платформой.Пример быстрого запуска фляжки dropbox с открывающейся клавишей
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()
Я получаю либо транспортную ошибку (OpenShift пытается использовать HTTP URI вместо HTTPS), или если я пытаюсь установить
os.environ['OAUTHLIB_INSECURE_TRANSPORT'] = '1'
(который я знаю, не рекомендуются для безопасности) затем я получаю
InvalidClientIdError: (invalid_request) Can't use "Authorization" header and "client_secret" arg together.
как локально, так и на платформе с открывающейся платформой.
Любое предложение о том, что нужно подстроить в приведенном выше примере?
Ссылка на ProxyFix была очень полезна, поскольку openshift запускает простой HTTP за маршрутизатором TLS .. с app.wsgi_app = ProxyFix (app.wsgi_app) Я получил код клятвы Dropbox для работы на основе их [руководства] (https: // www .dropbox.com/разработчиков-v1/хранилищу/учебник/питон). – k3it