dio
dio copied to clipboard
ServerSendEvent support for Flutter Web
Request Statement
When request for ServerSendEvent stream on TargetPlatform: Web, it response with a UnsupportedError: RawSocket constructor
Stream<T> requestForServerSendEventStream<T>(String url, Map<String, dynamic> request,
{required void Function(CancelData cancelData) onCancel}) {
final controller = StreamController<T>.broadcast();
final cancelData = CancelData(cancelToken: CancelToken());
try {
onCancel(cancelData);
_dio
.post(url,
cancelToken: cancelData.cancelToken,
data: json.encode(request),
options: Options(responseType: ResponseType.stream))
.then((it) {
it.data.stream.listen((it) {
// ...
}, onDone: () {
controller.close();
}, onError: (err, t) {
// ...
});
}, onError: (err, t) {
// ...
});
} on DioException catch (e) {
// ...
}
return controller.stream;
}
Solution Brainstorm
No response