回答編集履歴
1
コードをリファクタリングした
answer
CHANGED
@@ -15,30 +15,30 @@
|
|
15
15
|
def perform_request(env)
|
16
16
|
if env["PATH_INFO"].include?("/images/")
|
17
17
|
#画像関連
|
18
|
-
dev_server = env["HTTP_HOST"].gsub(":3000", ":3035")
|
19
|
-
env
|
18
|
+
change_http_host(env)
|
20
|
-
env["HTTP_X_FORWARDED_HOST"] = dev_server
|
21
|
-
env["HTTP_X_FORWARDED_SERVER"] = dev_server
|
22
19
|
env["PATH_INFO"] = "/images/" + env["PATH_INFO"].split("/").last
|
23
20
|
super
|
24
21
|
elsif env["PATH_INFO"].include?("/packs/")
|
25
22
|
#通常のReactコード
|
26
|
-
dev_server = env["HTTP_HOST"].gsub(":3000", ":3035")
|
27
|
-
env
|
23
|
+
change_http_host(env)
|
28
|
-
env["HTTP_X_FORWARDED_HOST"] = dev_server
|
29
|
-
env["HTTP_X_FORWARDED_SERVER"] = dev_server
|
30
24
|
super
|
31
25
|
elsif env["PATH_INFO"].match("/.+\-.+.js")
|
32
26
|
#lazy loadしているReactコード
|
33
|
-
dev_server = env["HTTP_HOST"].gsub(":3000", ":3035")
|
34
|
-
env
|
27
|
+
change_http_host(env)
|
35
|
-
env["HTTP_X_FORWARDED_HOST"] = dev_server
|
36
|
-
env["HTTP_X_FORWARDED_SERVER"] = dev_server
|
37
28
|
env["PATH_INFO"] = "/packs/" + env["PATH_INFO"].split("/").last
|
38
29
|
super
|
39
30
|
else
|
40
31
|
@app.call(env)
|
41
32
|
end
|
42
33
|
end
|
34
|
+
|
35
|
+
private
|
36
|
+
|
37
|
+
def change_http_host(env)
|
38
|
+
dev_server = env["HTTP_HOST"].gsub(":3000", ":3035")
|
39
|
+
env["HTTP_HOST"] = dev_server
|
40
|
+
env["HTTP_X_FORWARDED_HOST"] = dev_server
|
41
|
+
env["HTTP_X_FORWARDED_SERVER"] = dev_server
|
42
|
+
end
|
43
43
|
end
|
44
44
|
```
|