update: upgrade web package to v1.1.0

This commit is contained in:
minoic 2024-12-16 09:15:03 -08:00 committed by Aran Donohue
parent 609d725e34
commit 20bd1737c4
No known key found for this signature in database
GPG Key ID: EA98761C2C20A998
2 changed files with 11 additions and 24 deletions

View File

@ -59,12 +59,14 @@ class XhrTransportStream implements GrpcTransportStream {
if (_incomingProcessor.isClosed) { if (_incomingProcessor.isClosed) {
return; return;
} }
// TODO: dart-lang/web#285 use 'if' for now switch (_request.readyState) {
if (_request.readyState == XMLHttpRequest.HEADERS_RECEIVED) { case XMLHttpRequest.HEADERS_RECEIVED:
_onHeadersReceived(); _onHeadersReceived();
} else if (_request.readyState == XMLHttpRequest.DONE) { break;
_onRequestDone(); case XMLHttpRequest.DONE:
_close(); _onRequestDone();
_close();
break;
} }
}); });
@ -99,7 +101,7 @@ class XhrTransportStream implements GrpcTransportStream {
bool _validateResponseState() { bool _validateResponseState() {
try { try {
validateHttpStatusAndContentType( validateHttpStatusAndContentType(
_request.status, _parseHeaders(_request.getAllResponseHeaders()), _request.status, _request.responseHeaders,
rawResponse: _request.responseText); rawResponse: _request.responseText);
return true; return true;
} catch (e, st) { } catch (e, st) {
@ -113,8 +115,7 @@ class XhrTransportStream implements GrpcTransportStream {
if (!_validateResponseState()) { if (!_validateResponseState()) {
return; return;
} }
_incomingMessages _incomingMessages.add(GrpcMetadata(_request.responseHeaders));
.add(GrpcMetadata(_parseHeaders(_request.getAllResponseHeaders())));
} }
void _onRequestDone() { void _onRequestDone() {
@ -138,20 +139,6 @@ class XhrTransportStream implements GrpcTransportStream {
_onDone(this); _onDone(this);
} }
Map<String, String> _parseHeaders(String rawHeaders) {
final headers = <String, String>{};
final lines = rawHeaders.split('\r\n');
for (var line in lines) {
final index = line.indexOf(': ');
if (index != -1) {
final key = line.substring(0, index);
final value = line.substring(index + 2);
headers[key] = value;
}
}
return headers;
}
@override @override
Future<void> terminate() async { Future<void> terminate() async {
_close(); _close();

View File

@ -17,7 +17,7 @@ dependencies:
http2: ^2.2.0 http2: ^2.2.0
protobuf: '>=2.0.0 <4.0.0' protobuf: '>=2.0.0 <4.0.0'
clock: ^1.1.1 clock: ^1.1.1
web: ^1.0.0 web: ^1.1.0
dev_dependencies: dev_dependencies:
build_runner: ^2.0.0 build_runner: ^2.0.0