質問編集履歴

2

自己解決方法を追記しました

2020/04/17 04:36

投稿

tsunenori
tsunenori

スコア9

test CHANGED
File without changes
test CHANGED
@@ -34,7 +34,7 @@
34
34
 
35
35
  テキストファイルの読み込みは以下のようなコードでレスポンスしています。
36
36
 
37
- ```Dart
37
+ ```dart
38
38
 
39
39
  fileHandler(HttpRequest request) async {
40
40
 
@@ -55,3 +55,41 @@
55
55
  }
56
56
 
57
57
  ```
58
+
59
+
60
+
61
+ 【2020/04/17追記】
62
+
63
+ 以下の方法で自己解決しました
64
+
65
+ ```dart
66
+
67
+ String mimeType = lookupMimeType(fileName);
68
+
69
+ if (mimeType == null) mimeType = 'text/plain; charset=UTF-8'; // default
70
+
71
+ print("mimeType = " + mimeType);
72
+
73
+
74
+
75
+ // ファイルを読み取る
76
+
77
+ final bytes = await rootBundle.load(fileName);
78
+
79
+ final buffer = bytes.buffer;
80
+
81
+
82
+
83
+ //レスポンスを作成
84
+
85
+ request.response
86
+
87
+ ..headers.set('Content-Type', mimeType)
88
+
89
+ ..statusCode = HttpStatus.ok
90
+
91
+ ..add(buffer.asInt8List())
92
+
93
+ ..close();
94
+
95
+ ```

1

テキストファイルのレスポンス処理のコードを追加

2020/04/17 04:36

投稿

tsunenori
tsunenori

スコア9

test CHANGED
File without changes
test CHANGED
@@ -29,3 +29,29 @@
29
29
  |-index.html
30
30
 
31
31
  |-favicon.ico
32
+
33
+
34
+
35
+ テキストファイルの読み込みは以下のようなコードでレスポンスしています。
36
+
37
+ ```Dart
38
+
39
+ fileHandler(HttpRequest request) async {
40
+
41
+ String fileName = "assets" + request.uri.path;
42
+
43
+ String mimeType = mime.lookupMimeType(fileName);
44
+
45
+ String fileText = await rootBundle.loadString(fileName);
46
+
47
+ request.response
48
+
49
+ ..headers.set('Content-Type', mimeType);
50
+
51
+ ..write(fileText);
52
+
53
+ ..close()
54
+
55
+ }
56
+
57
+ ```