Programação de rede em .NET

O .NET fornece uma implementação em camadas, extensível e gerenciada de serviços da Internet que podem ser rápida e facilmente integrados em seus aplicativos. Seus aplicativos de rede podem se basear em protocolos conectáveis para aproveitar automaticamente vários protocolos da Internet ou podem usar uma implementação gerenciada de interfaces de soquete entre plataformas para trabalhar com a rede no nível do soquete.

Aplicações da Internet

Os aplicativos da Internet podem ser classificados amplamente em dois tipos: aplicativos cliente que solicitam informações e aplicativos de servidor que respondem a solicitações de informações de clientes. O aplicativo cliente-servidor clássico da Internet é a World Wide Web, onde as pessoas usam navegadores para acessar documentos e outros dados armazenados em servidores da Web em todo o mundo.

Os aplicativos não estão limitados a apenas uma dessas funções; Por exemplo, o conhecido servidor de aplicativos de camada intermediária responde a solicitações de clientes solicitando dados de outro servidor, caso em que está agindo como um servidor e um cliente.

O aplicativo cliente solicita identificando o recurso de Internet solicitado e o protocolo de comunicação a ser usado para a solicitação e a resposta. Se necessário, o cliente também fornece quaisquer dados adicionais necessários para concluir a solicitação, como localização do proxy ou informações de autenticação (nome de usuário, senha e assim por diante). Uma vez que a solicitação é formada, a solicitação pode ser enviada para o servidor.

Identificação de recursos

O .NET usa um URI (identificador de recurso uniforme) para identificar o recurso da Internet solicitado e o protocolo de comunicação. O URI consiste em pelo menos três, e possivelmente quatro, fragmentos: o identificador de esquema, que identifica o protocolo de comunicação para a solicitação e resposta; o identificador do servidor, que consiste num nome de anfitrião do sistema de nomes de domínio (DNS) ou num endereço TCP que identifica exclusivamente o servidor na Internet; o identificador de caminho, que localiza as informações solicitadas no servidor; e uma cadeia de caracteres de consulta opcional, que passa informações do cliente para o servidor.

O System.Uri tipo é usado como uma representação de um identificador de recurso uniforme (URI) e fácil acesso às partes do URI. Para criar uma Uri instância, você pode passar uma cadeia de caracteres:

const string uriString =
    "https://video2.skills-academy.com/en-us/dotnet/path?key=value#bookmark";

Uri canonicalUri = new(uriString);
Console.WriteLine(canonicalUri.Host);
Console.WriteLine(canonicalUri.PathAndQuery);
Console.WriteLine(canonicalUri.Fragment);
// Sample output:
//     video2.skills-academy.com
//     /en-us/dotnet/path?key=value
//     #bookmark

A Uri classe executa automaticamente a validação e canonicalização de acordo com RCF 3986. Essas regras de validação e canonicalização são usadas para garantir que um URI esteja bem formado e que o URI esteja em uma forma canônica.

Consulte também