- フラスコで提供され、トークンベースの認証で保護されたファイルがあります。
- angularアプリからダウンロードを提供したい
- トークンはAngularセッションに保存され、各 $http.get または post のヘッダーに入れられます
しかし、フラスコパスへのリンクを配置しただけでは、角度のある $http.get() ではないため、トークンはリクエストヘッダーに追加されませんが、これを行うことはできません (右?)。
URLにトークンをクエリ文字列パラメーターとして渡したくありません。ユーザーにダウンロードを提供するにはどうすればよいですか? 最初に $http.get() で角度を付けてから、ファイルのダウンロードとしてトンネルを通過する必要がありますか?
ログイン後のトークン ストレージ:
$window.sessionStorage.token = results.response.user.authentication_token;
各 $http get または post に挿入されます。
config.headers['Authentication-Token'] = $window.sessionStorage.getItem('token');
フラスコ(フラスコセキュリティ付き)部分:
@app.route("/download", methods=['GET'])
@auth_token_required
def download():
response = make_response(open('filename.ext').read())
response.headers["Content-Disposition"] = "attachment; filename=download.ext"
return response
これを解決するにはどうすればよいですか?