回答編集履歴

2

追記

2019/09/30 09:42

投稿

quickquip
quickquip

スコア11038

test CHANGED
@@ -33,3 +33,51 @@
33
33
 
34
34
 
35
35
  が効いていないという主旨の質問でしたら、この回答は不適切ですね。
36
+
37
+
38
+
39
+ ----
40
+
41
+
42
+
43
+ 追記
44
+
45
+
46
+
47
+ ```
48
+
49
+ @app.route('/upload',methods=['POST'])
50
+
51
+ ```
52
+
53
+ と書いて`/upload`にアクセスすると表示された時のURLは`/upload`になります。
54
+
55
+
56
+
57
+ ```
58
+
59
+ @app.route('/upload/',methods=['POST'])
60
+
61
+ ```
62
+
63
+ と書いて`/upload`にアクセスしても、`/upload`というURLに該当する関数は登録されていません。
64
+
65
+ ですが`/`を追加すると合致する関数が登録されているなら、HTTPステータスコード308を返し、`/upload/`にリダイレクトします。
66
+
67
+ ブラウザは308を受け取って、改めて`/upload/`にアクセスします。それで処理が行われるので、ブラウザで表示された時そのURLは`/upload/`になってます。
68
+
69
+
70
+
71
+ result.htmlには
72
+
73
+ ```
74
+
75
+ <img src="static/hoge.jpg" (略)
76
+
77
+ ```
78
+
79
+ と書いてあるので、
80
+
81
+ 前者の場合ブラウザはイメージとして`/static/hoge.jpg`にアクセスします。
82
+
83
+ 後者の場合ブラウザはイメージとして`/upload/static/hoge.jpg`にアクセスします。(ページのURLが`/upload/`ですから)

1

追記

2019/09/30 09:42

投稿

quickquip
quickquip

スコア11038

test CHANGED
@@ -13,3 +13,23 @@
13
13
  ```
14
14
 
15
15
  では
16
+
17
+
18
+
19
+ ----
20
+
21
+
22
+
23
+ すみません。
24
+
25
+
26
+
27
+ [https://flask.palletsprojects.com/en/1.1.x/api/#url-route-registrations](https://flask.palletsprojects.com/en/1.1.x/api/#url-route-registrations)
28
+
29
+
30
+
31
+ > If a rule ends with a slash and is requested without a slash by the user, the user is automatically redirected to the same page with a trailing slash attached.
32
+
33
+
34
+
35
+ が効いていないという主旨の質問でしたら、この回答は不適切ですね。