Alexandre Ardhuin gave a short and correct answer, for those who want to see the full code:
import 'dart:io';
import 'dart:convert' show UTF8;
void main() {
HttpServer.bind('127.0.0.1', 3000).then((server){
server.listen((HttpRequest request) {
print("request made");
if(request.contentLength == -1){
_sendResponse(request, '');
}else{
UTF8.decodeStream(request).then((data)=>_sendResponse(request,data));
}
});
});
}
_sendResponse(HttpRequest request, String requestData){
request.response.write('''
<html>
<head>
</head>
<body>
<pre>
HELLO:
request info:
method: ${request.method}
uri: ${request.uri}
content length: ${request.contentLength}
content: ${requestData}
</pre>
<script>
var req = new XMLHttpRequest();
req.open("POST","/a_demonstration");
req.send("{'text':'some text data.'}");
</script>
</body>
</html>
''');
request.response.close();
}
0xor1 source
share