Browserbasiert: gRPC-Web soll .NET-Entwicklung ins Netz bringen
Mit dem offiziellen Release der Webversion des Frameworks für Remote Procedure Calls (gRPC-Web) sollen .NET-Entwickler direkt im Browser arbeiten können.
![Browserbasiert: gRPC-Web soll .NET-Entwicklung ins Netz bringen](https://heise.cloudimg.io/width/610/q85.png-lossy-85.webp-lossy-85.foil1/_www-heise-de_/imgs/18/2/9/1/2/8/8/5/shutterstock_519396565-2fd57bcc75cf6ed1.jpeg)
(Bild: sirtravelalot/Shutterstock.com)
- Silke Hahn
Microsoft hat das Framework gRPC-Web für .NET als produktionsreif herausgegeben – gRPC-Aufrufe mit .NET lassen sich nun auch direkt im Browser nutzen, ohne zwischengeschalteten Proxy. gRPC ist laut Anbieter ein RPC-Framework (Remote Procedure Call), das unter anderem auf HTTP/2 und Protocol Buffers beruht. Der offene Standard unterstützt zahlreiche Programmiersprachen und soll ab dieser Version auch .NET vollständig unterstützen.
gRPC-Web ermöglicht .NET-Entwicklung im Browser
Experimentelle Unterstützung hatte das Projekt bereits im Januar 2020 erhalten, auf der Basis des seither eingegangenen Feedbacks von Early Adopters nahm das Projektteam Änderungen vor. Die Technologie selbst hinter gRPC-Web ist nicht neu, einen stabilen Client für Java gibt es bereits seit längerem und auch einen Proxy. Die Version von gRPC-Web für Java ist seit dem Herbst 2018 allgemein verfügbar.
Mit gRPC-Web sollen mehrere Szenarien nun auch für .NET-Entwickler offen stehen: Aufrufe von mit ASP.NET Core erstellten Apps im Browser sind nun offenbar möglich. Das ist von Interesse, da Aufrufe von gRPC HTTP/2 über die Browser-APIs noch nicht möglich sind: gRPC-Web soll eine gangbare Alternative dazu bieten. Auch von anderen Plattformen als .NET Core aus lassen sich gRPC-Aufrufe mit dem neuen Tool wohl durchführen, um zum Beispiel Blazor- und Xamarin-Services zu nutzen. Für weitere Lücken bietet gRPC-Web offenbar einen Workaround, um die .NET-Entwicklung in den Browser zu heben.
Was ist gRPC?
gRPC ist ein ursprünglich von Google (daher das g vor RPC) entwickeltes, quelloffenes System für Remote Procedure Calls (RPC). Es nutzt HTTP/2 als Transport und Protocol Buffers als Interface Description Language (IDL). Es besitzt Features wie Authentifizierung und bidirektionales Streaming. Außerdem funktioniert es sprachen- und plattformübergreifend.
Mehr Details stehen in den Release Notes zu gRPC-Web für .NET. Weiterführende Hinweise lassen sich der Projektseite zu gRPC-Web bei GitHub entnehmen. Interessierte können sich über Hintergründe auch in dem Blogeintrag zum experimentellen Release informieren.
(sih)