サーバー側で Dart アプリケーションを実行しています。特定のポートでリッスンしており、正常に動作しています。問題は、リスナーがお気に入りのアイコン (favicon) の GET に応答していることです。
どうすればそれを回避できますか?
編集:いくつかのコード例を挙げてください。
import 'dart:io';
void main() {
print("Starting server.");
HttpServer.bind(InternetAddress.LOOPBACK_IP_V4, 4041)
.then(listenForRequests)
.catchError((e) => print (e.toString()));
}
listenForRequests(HttpServer _server) {
_server.listen((HttpRequest request) {
if (request.method == 'GET') {
handleGet(request);
} else {
request.response.statusCode = HttpStatus.METHOD_NOT_ALLOWED;
request.response.write("Unsupported request: ${request.method}.");
request.response.close();
}
},
onDone: () => print('No more requests.'),
onError: (e) => print(e.toString()) );
}
void handleGet(HttpRequest request) {
int requestNumber = 1;
print(requestNumber); // This shows me the request number. Just for information.
print(request.uri); // This shows me the request from the client browser.
request.response.statusCode = HttpStatus.OK;
request.response.close();
}
これは、このコードの出力です。
1
/SOME_REQUEST_FROM_THE_BROWSER
2
/favicon.ico