David King
davidk@gnome.org 2013
Comunicação HTTP entre cliente e servidor, E/S de conectividade portátil baseada em soquete e gerenciamento de desenvolvimento de rede.
Enrico Nicoletto
liverig@gmail.com 2009
Rafael Fontenelle
rafaelff@gnome.org 2013, 2014, 2016, 2017
Isaac Ferreira Filho
isaacmob@riseup.net 2018

# Conectividade de baixo nível

Crie servidores e clientes HTTP poderosos e flexíveis

Use APIs portáveis baseadas em soquetes em um UI sem bloqueio

Detecte e gerencie o estado da conexão de rede

Aproveite=se das APIs portáveis de conectividade para acessar serviços de rede. E/S assíncrona mantém a UI de seu aplicativo responsivo enquanto E/S está em progresso. Detecte alterações no estado de conectividade do sistema, para fazer com que seu aplicativo responda apropriadamente quando não há acesso à Internet.

# O que você pode fazer?

Para acessar assincronamente APIs de conectividade de baixo nível, use conectividade do GIO. API de alto nível está disponível para resolver proxies e registros DNS assim como usar soquetes seguros (TLS).

Monitoramento simples de estado de rede está disponível no GIO, mas NetworkManager fornece suporte compreensivo para conectar dispositivos e topologias de rede.

Libsoup fornece uma interface flexível para servidores e clientes HTTP. Ambas APIs síncronas e assíncronas são fornecidas.

# Exemplos do mundo real

Você pode ver muitos dos aplicativos do mundo real de tecnologias de conectividade do GNOME em projetos de código aberto, como os exemplos listados abaixo.

Web é o navegador do GNOME, que usa libsoup para acessar serviços HTTP.

( Site | Capturas de tela | Código-fonte )

GNOME Shell é o ambiente GNOME visível ao usuário, que usa NetworkManager para o menu de status de rede, incluindo para gerenciar sistemas de conectividade cabeada, sem fio, modem 3G e VPN.

( Site | Capturas de tela | Código-fonte )