http2
Eine HTTP/2-Implementierung für Dart.
Auf GitHub ansehen ↗Archiviert
- Sterne
- 150
- Forks
- 45
- Letzter Push (UTC)
- 21.10.2024
- Projektstatus
- Archiviert
Original-README
Englischer Projektschnappschuss. Aktuelle Inhalte auf GitHub.
[!IMPORTANT]
This repo has moved to https://github.com/dart-lang/http/tree/master/pkgs/http2
This library provides an http/2 interface on top of a bidirectional stream of bytes.
Usage
Here is a minimal example of connecting to a http/2 capable server, requesting a resource and iterating over the response.
import 'dart:convert';
import 'dart:io';
import 'package:http2/http2.dart';
Future<void> main() async {
final uri = Uri.parse('https://www.google.com/');
final transport = ClientTransportConnection.viaSocket(
await SecureSocket.connect(
uri.host,
uri.port,
supportedProtocols: ['h2'],
),
);
final stream = transport.makeRequest(
[
Header.ascii(':method', 'GET'),
Header.ascii(':path', uri.path),
Header.ascii(':scheme', uri.scheme),
Header.ascii(':authority', uri.host),
],
endStream: true,
);
await for (var message in stream.incomingMessages) {
if (message is HeadersStreamMessage) {
for (var header in message.headers) {
final name = utf8.decode(header.name);
final value = utf8.decode(header.value);
print('Header: $name: $value');
}
} else if (message is DataStreamMessage) {
// Use [message.bytes] (but respect 'content-encoding' header)
}
}
await transport.finish();
}
An example with better error handling is available here.
See the API docs for more details.
Features and bugs
Please file feature requests and bugs at the issue tracker.
SprachenDart
Verwendete Abhängigkeiten
Abhängigkeiten 4 Einträge
- build_runnerEntwicklung
^2.3.0 - dart_flutter_team_lintsEntwicklung
^2.0.0 - mockitoEntwicklung
^5.3.2 - testEntwicklung
^1.21.4
Wie wähle ich ein passendes Repository?
Nach Anwendungsfall filtern, Aktivität vergleichen und vor der Nutzung das Originalprojekt prüfen.
- Nach Name, Autor oder Beschreibung suchen und nach Thema eingrenzen.
- Sterne, Forks und letzte Pushes vergleichen. Sterne zeigen Interesse, garantieren aber keine Qualität.
- Vor der Nutzung README, Lizenz und Issues auf GitHub prüfen.
Quellen und Pflege
“A repository is the most basic element of GitHub.”
GitHub Docs — About repositories ↗
- dart-archive/http2 · GitHub ↗
- GitHub Docs — Saving repositories with stars ↗
- Verzeichnis gepflegt von Ducafecat ↗