David King
davidk@gnome.org 2013
HTTP-kommunikation för klient och server, portabel uttagsbaserad nätverks-IO, och nätverksenhetshantering.
Daniel Nylander
po@danielnylander.se 2007
Anders Jonsson
anders.jonsson@norsjovallen.se 2017, 2018

# Lågnivå-nätverk

Skapa kraftfulla och flexibla HTTP-servrar och klienter

Använd portabla uttagsbaserade API:er i ett användargränssnitt utan att blockera

Upptäck och hantera nätverkets anslutningstillstånd

Dra fördel av de portabla nätverks-API:erna för att komma åt nätverkstjänster. Asynkron inmatning/utmatning behåller ditt programs användargränssnitt kvickt att reagera under tiden inmatning/utmatning pågår. Upptäck skillnader i systemets nätverkstillstånd så att ditt program kan svara adekvat då det inte finns någon internetåtkomst.

# Vad kan du göra?

För att asynkront komma åt lågnivå-API:er för nätverk, använd GIO-nätverk. API:er på högre nivå finns tillgängliga för att slå upp proxyservrar och DNS-poster såväl som att använda säkra uttag (TLS).

Enkel övervakning av nätverkstillstånd finns tillgänglig i GIO, men Nätverkshanteraren tillhandahåller omfattande stöd för nätverksenheter och nätverkstopologier.

Libsoup tillhandahåller ett flexibelt gränssnitt för HTTP-servrar och klienter. Både synkrona och asynkrona API:er tillhandahålls.

# Exempel från verkligheten

Du kan se många faktiska tillämpningar av GNOME-nätverksteknologier i öppna källkodsprojekt, så som exemplen nedan.

Webb är GNOME:s webbläsare, vilken använder libsoup för åtkomst till HTTP-tjänster.

( Webbplats | Skärmbild | Källkod )

GNOME Shell är det användarsynliga GNOME-skrivbordet, vilket använder Nätverkshanteraren för nätverksstatusmenyn, inklusive hantering av trådbundna och trådlösa nätverk, 3G-modem och VPN-nätverkssystem.

( Webbplats | Skärmbild | Källkod )