Share via


Netwerkprogrammering in .NET

.NET biedt een gelaagde, uitbreidbare en beheerde implementatie van internetservices die snel en eenvoudig in uw apps kunnen worden geïntegreerd. Uw netwerk-apps kunnen bouwen op pluggable protocollen om automatisch te profiteren van verschillende internetprotocollen, of ze kunnen een beheerde implementatie van platformoverschrijdende socketinterfaces gebruiken om met het netwerk op socketniveau te werken.

Internet-apps

Internet-apps kunnen breed worden geclassificeerd in twee soorten: client-apps die informatie aanvragen en server-apps die reageren op informatieaanvragen van clients. De klassieke internetclientserver-app is het World Wide Web, waar mensen browsers gebruiken voor toegang tot documenten en andere gegevens die wereldwijd zijn opgeslagen op webservers.

Apps zijn niet beperkt tot slechts één van deze rollen; De bekende app-server in de middelste laag reageert bijvoorbeeld op aanvragen van clients door gegevens op te vragen van een andere server, in dat geval fungeert deze als een server en een client.

De client-app vraagt aan door de aangevraagde internetresource en het communicatieprotocol te identificeren dat moet worden gebruikt voor de aanvraag en het antwoord. Indien nodig biedt de client ook aanvullende gegevens die nodig zijn om de aanvraag te voltooien, zoals proxylocatie of verificatiegegevens (gebruikersnaam, wachtwoord, enzovoort). Zodra de aanvraag is gevormd, kan de aanvraag naar de server worden verzonden.

Resources identificeren

.NET maakt gebruik van een URI (Uniform Resource Identifier) om de aangevraagde internetresource en het communicatieprotocol te identificeren. De URI bestaat uit ten minste drie en mogelijk vier fragmenten: de schema-id, die het communicatieprotocol voor de aanvraag en het antwoord identificeert; de server-id, die bestaat uit een DNS-hostnaam (Domain Name System) of een TCP-adres waarmee de server op internet uniek wordt geïdentificeerd; de pad-id, die de gevraagde informatie op de server zoekt; en een optionele queryreeks, die informatie van de client doorgeeft aan de server.

Het System.Uri type wordt gebruikt als een weergave van een URI (Uniform Resource Identifier) en eenvoudige toegang tot de onderdelen van de URI. Als u een Uri exemplaar wilt maken, kunt u deze doorgeven aan een tekenreeks:

const string uriString =
    "https://learn.microsoft.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:
//     learn.microsoft.com
//     /en-us/dotnet/path?key=value
//     #bookmark

De Uri klasse voert automatisch validatie en canonicalisatie uit per RCF 3986. Deze validatie- en canonicalisatieregels worden gebruikt om ervoor te zorgen dat een URI goed is gevormd en dat de URI zich in een canonieke vorm bevindt.

Zie ook