Nätverksprogrammering i .NET

.NET tillhandahåller en skiktad, utökningsbar och hanterad implementering av Internettjänster som snabbt och enkelt kan integreras i dina appar. Dina nätverksappar kan bygga på anslutningsbara protokoll för att automatiskt dra nytta av olika Internetprotokoll, eller så kan de använda en hanterad implementering av socketgränssnitt mellan plattformar för att arbeta med nätverket på socketnivå.

Internetappar

Internetappar kan klassificeras i stort sett i två typer: klientappar som begär information och serverappar som svarar på informationsförfrågningar från klienter. Den klassiska Internetklientserverappen är World Wide Web, där personer använder webbläsare för att komma åt dokument och andra data som lagras på webbservrar över hela världen.

Appar är inte begränsade till bara en av dessa roller. Till exempel svarar den välbekanta mellannivåappservern på begäranden från klienter genom att begära data från en annan server, i vilket fall den fungerar som både en server och en klient.

Klientappen begär genom att identifiera den begärda Internetresursen och kommunikationsprotokollet som ska användas för begäran och svaret. Vid behov tillhandahåller klienten även ytterligare data som krävs för att slutföra begäran, till exempel proxyplats eller autentiseringsinformation (användarnamn, lösenord och så vidare). När begäran har skapats kan begäran skickas till servern.

Identifiera resurser

.NET använder en enhetlig resursidentifierare (URI) för att identifiera den begärda Internetresursen och kommunikationsprotokollet. URI:n består av minst tre, och eventuellt fyra, fragment: systemidentifieraren, som identifierar kommunikationsprotokollet för begäran och svaret; serveridentifieraren, som består av antingen ett DNS-värdnamn (Domain Name System) eller en TCP-adress som unikt identifierar servern på Internet. sökvägsidentifieraren, som letar upp den begärda informationen på servern. och en valfri frågesträng som skickar information från klienten till servern.

Typen System.Uri används som en representation av en enhetlig resursidentifierare (URI) och enkel åtkomst till URI:ns delar. Om du vill skapa en Uri instans kan du skicka den en sträng:

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

Klassen Uri utför automatiskt validering och kanonisering per RCF 3986. Dessa verifierings- och kanoniseringsregler används för att säkerställa att en URI är välformulerad och att URI:n är i kanonisk form.

Se även