Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Mi az a SignalR?
ASP.NET Core SignalR egy nyílt forráskódú kódtár, amely leegyszerűsíti a valós idejű webes funkciók alkalmazásokhoz való hozzáadását. A valós idejű webfunkció lehetővé teszi a kiszolgálóoldali kódnak, hogy a tartalmat azonnal leküldje az ügyfeleknek.
Jó jelöltek:SignalR
- A kiszolgálóról nagy gyakoriságú frissítéseket igénylő alkalmazások. Ilyenek például a játékok, a közösségi hálózatok, a szavazás, az aukció, a térképek és a GPS-alkalmazások.
- Irányítópultok és monitorozási alkalmazások. Ilyenek például a vállalati irányítópultok, az azonnali értékesítési frissítések vagy az utazási riasztások.
- Együttműködésen alapuló alkalmazások. A rajztáblás alkalmazások és a csapatértekezleti szoftverek példák az együttműködésen alapuló alkalmazásokra.
- Értesítéseket igénylő alkalmazások. A közösségi hálózatok, az e-mailek, a csevegések, a játékok, az utazási riasztások és sok más alkalmazás értesítéseket használnak.
SignalR EGY API-t biztosít a kiszolgálók közötti távoli eljáráshívások (RPC) létrehozásához. Az RPC-k kiszolgálóoldali .NET-kódból hívják meg az ügyfelek függvényeit. Számos támogatott platform létezik, amelyek mindegyike a megfelelő ügyféloldali SDK-val van elosztva. Emiatt az RPC-hívás által meghívott programozási nyelv eltérő.
Az ASP.NET Core néhány funkciója a következő: SignalR
- Automatikusan kezeli a kapcsolatkezelést.
- Üzeneteket küld az összes csatlakoztatott ügyfélnek egyszerre. Például egy csevegőszoba.
- Üzeneteket küld adott ügyfeleknek vagy ügyfélcsoportoknak.
- Skálázás a növekvő forgalom kezelésére.
- SignalR Központi protokoll
A forrás egy SignalR GitHub-adattárban található.
Transports
SignalR a valós idejű kommunikáció kezelésére az alábbi technikákat támogatja (a zökkenőmentes visszaállás érdekében):
- WebSockets
- Kiszolgáló által küldött események
- Hosszú lekérdezés
SignalR automatikusan kiválasztja a kiszolgáló és az ügyfél képességeinek megfelelő legjobb átviteli módszert.
Hubs
SignalR központokkal kommunikál az ügyfelek és a kiszolgálók között.
A hub egy magas szintű csatorna, amely lehetővé teszi, hogy az ügyfél és a kiszolgáló metódusokat hívjanak meg egymáson. SignalR Automatikusan kezeli a géphatárok közötti küldést, így az ügyfelek metódusokat hívhat meg a kiszolgálón, és fordítva. Szigorúan gépelt paramétereket adhat át a metódusoknak, ami lehetővé teszi a modellkötést. SignalR Két beépített központi protokollt biztosít: egy JSON-alapú szöveges protokollt és egy MessagePack-alapú bináris protokollt. A MessagePack általában kisebb üzeneteket hoz létre a JSON-hoz képest. A régebbi böngészőknek támogatniuk kell a 2. szintű XHR-t a MessagePack protokoll támogatásához.
A hubs az ügyféloldali metódus nevét és paramétereit tartalmazó üzenetek küldésével hívja meg az ügyféloldali kódot. A metódusparaméterként küldött objektumok deszerializálása a konfigurált protokoll használatával történik. Az ügyfél megpróbálja összekapcsolni a nevet az ügyféloldali kód egyik metódusával. Amikor az ügyfél talál egyezést, meghívja a metódust, és átadja neki a deszerializált paraméteradatokat.
Az ECMAScript 6 -ot (ES6) nem támogató böngészők
SignalR az ES6-ot célozza meg. Az ES6-ot nem támogató böngészők esetén a kódtárat es5-be kell lefordítani. További információ: Az ES6 használatának kezdetei – Az ES6 Traceur-ral és Babel-lel történő ES5-re fordítása.
További erőforrások
- Az ASP.NET Core bevezetése SignalR
- SignalR használatának első lépései
- Támogatott platformok
- Hubs
- JavaScript-ügyfél
- Az ECMAScript 6 -ot (ES6) nem támogató böngészők
- ASP.NET Core BlazorSignalR útmutató