Richtlinie
Netzwerkdiagnose-Tutorial
Mit @capgo/capacitor-netzwerkdiagnose
Nativnetzwerkdiagnose für Capacitor-Apps, die bei der Fehlersuche von eingeschränkten Wi-Fi, Captive Portals, blockierten Ports, WebSocket-Fehlern, langsamen Downloads und Paketverlusten helfen müssen.
Installieren
npm install @capgo/capacitor-network-diagnostics
npx cap sync
Was dieses Plugin enthüllt
getNetworkStatus- Die native Verbindungstyp und Plattform-Netzwerkflags lesen.testUrl- Überprüfen Sie die Erreichbarkeit einer HTTP- oder HTTPS-URL mit Status code und Latenz.testPort- Öffnen Sie einen nativen TCP-Socket zu einem Host und einer Port.testWebSocket- Eine Handshake- oder - Validierung durchführen.ws://- Die nativen Download-Durchsatz messen.wss://odertestDownloadSpeedHandshaketestPacketLoss- Schätzen Sie den Paketverlust auf Anwendungsseite mit wiederholten Proben.runDiagnostics- Führen Sie einen kombinierten Diagnosevorgang durch und geben Sie eine Liste mit Problemen zurück.
Beispiel für die Verwendung
import { NetworkDiagnostics } from '@capgo/capacitor-network-diagnostics';
const report = await NetworkDiagnostics.runDiagnostics({
urls: [{ url: 'https://api.example.com/health' }],
ports: [{ host: 'api.example.com', port: 443 }],
websockets: [{ url: 'wss://ws.example.com/socket' }],
packetLoss: {
mode: 'tcp',
host: 'api.example.com',
port: 443,
count: 10,
},
});
console.log(report.status);
console.log(report.issues);
Unterstützungsweg
Bitten Sie den betroffenen Benutzer, Diagnosen durchzuführen, während er mit dem problematischen Wi-Fi oder Zugangspunkt verbunden ist. Senden Sie die Ergebnisse an den Support mit:
- Verbindungstyp und Netzwerkflags des Betriebssystems
- fehlgeschlagene URLs, Ports oder WebSocket-Endpunkte
- Herunterladung in Mbps
- Paketverlustprozentsatz
- Native Fehlercodes und -meldungen
Die Roh-ICMP-Ping ist auf iOS- und Android-Anwendungen nicht portable, daher wird der Paketverlust mit wiederholten TCP- oder HTTP-Proben gemessen.
Vollständige Referenz
- GitHub: https://github.com/Cap-go/capacitor-netzwerkdiagnostik/
- Dokumentation: /docs/plugins/netzwerkdiagnostik/