回答編集履歴
1
コメントへの回答を追記
answer
CHANGED
@@ -35,4 +35,29 @@
|
|
35
35
|
|
36
36
|
1つずつ個別に解決して、最後に組み合わせれば解決可能な問題と思います。
|
37
37
|
|
38
|
+
## 2023/07/13追記
|
38
39
|
|
40
|
+
> send_fileでこのサーバーPCのディレクトリを指定することでwebアプリに接続しているクライアントPCにtest.txtがダウンロードされると考えていましたが間違っているのでしょうか。
|
41
|
+
|
42
|
+
文面だけ考えると、認識の通りですが、たぶん間違っています。
|
43
|
+
|
44
|
+
以下を参照ください。
|
45
|
+
|
46
|
+
[flask.send_file](https://msiz07-flask-docs-ja.readthedocs.io/ja/latest/api.html?highlight=send_file#flask.send_file)
|
47
|
+
|
48
|
+
> path_or_file (Union[os.PathLike, str, BinaryIO]) -- The path to the file to send, relative to the current working directory if a relative path is given. Alternatively, a file-like object opened in binary mode. Make sure the file pointer is seeked to the start of the data.
|
49
|
+
|
50
|
+
訳:path_or_file (Union[os.PathLike, str, BinaryIO]) -- 送信するファイルへのパス。相対パスが与えられている場合は、現在の作業ディレクトリからの相対パス。あるいは、バイナリモードでオープンされたファイルライクオブジェクト。ファイルポインタがデータの先頭にシークされることを確認してください。
|
51
|
+
|
52
|
+
「相対パスが与えられている場合は」と訳されていますが、昔試した時はたしか、ここは相対パスかBytesIOしか設定できなかったはずです。
|
53
|
+
というか、絶対パスは期待通り動かなかったような記憶があります。
|
54
|
+
また、この相対パスは、Flaskのルートファイル(app.py)より上のフォルダだとダメだった記憶があります。(例えば、相対パスで`../../`みたいなのはダメだった)
|
55
|
+
|
56
|
+
そのため、SSHでDLするファイルは、Flaskのapp.pyがあるフォルダ(カレントフォルダ)より下に配置する必要があります。
|
57
|
+
|
58
|
+
Flaskのapp.pyは、Desktopでは動かしていないんでしょうか?
|
59
|
+
とりあえず、templatesの兄弟フォルダ(例えば、downloads)を作って、そこにtest.txtを置いて試して見てはどうでしょうか
|
60
|
+
|
61
|
+
|
62
|
+
|
63
|
+
|