Back to "एन. एन. ए."

This is a viewer only at the moment see the article on how this works.

To update the preview hit Ctrl-Alt-R (or ⌘-Alt-R on Mac) or Enter to refresh. The Save icon lets you save the markdown file to disk

This is a preview from the server running through my markdig pipeline

AI-Article ASP.NET ASP.NET Lifecycle

एन. एन. ए.

Sunday, 09 November 2025

परिचय

एनईएससी निवेदन तथा प्रतिक्रिया प्रतिक्रियाएं इस फ्रेमवर्क पर बनाई प्रत्येक वेब अनुप्रयोग की बुनियाद है.

यह समझने के लिए कि आपके अनुप्रयोग के ज़रिए कितनी गुज़ारिश की जाती है और कैसे प्रतिक्रिया विकसित की जाती है, निर्माण कार्य में कुशल, स्थिर रहने और सुरक्षित वेब अनुप्रयोगों के लिए अत्यावश्‍यक है ।

यह श्रंखला आपको बधाई की प्रत्येक परत के माध्यम से मार्ग दिखाएगा, एक क्षण से एचटीटीपी निवेदन आपके सर्वर पर आता है जब प्रतिक्रिया ग्राहक को वापस भेजा जाता है.

क्या आप एपीआई, वेब अनुप्रयोगों, या माइक्रोफ़ॉर्म्स निर्माण कर रहे हैं, हमेशा वहाँ है, दृश्यों के पीछे काम करते हैं.

यह गहराई से समझने के द्वारा, आप प्रदर्शन, लागू करने के लिए सक्षम हो जाएगा बढ़िया रूप से अच्छी तरह से, और अधिक प्रभावी समस्याओं मुद्दों को.

ध्यान दीजिए: यह एआई / एक तरीका है जो कि $००,००० के साथ मेरे परीक्षणों का हिस्सा है।**मैंने इसे काग़ज़ों की एक बेल भरी है, मेरी समझ, सवाल मैं इस लेख तैयार करने के लिए किया था.**यह मजेदार है और मैं कहीं और नहीं भरा एक अंतर भर देता है.

  1. **निवेदन पाइपलाइन क्या है?**यह प्रक्रिया HTTP निवेदन और एचटीटीपी जवाब तैयार करती है.
  2. **इसके बारे में सोचिए, एक कारखाने में एक तार: निवेदन एक छोर पर प्रवेश करता है, जो विभिन्‍न स्टेशनों (क) के माध्यम से जाता है, जो जाँच करते हैं, परिवर्धित करते हैं, या उस पर कार्य करते हैं, और आख़िरकार एक प्रतिक्रिया दूसरे अन्त में बढ़ती है ।**यह वस्तुओं पर आधारित है
  3. मध्य- एलबम पैटर्न, जहाँ हर अवयव (विविदा) की विशेष ज़िम्मेदारी है और कर सकते हैं:

आने वाली निवेदन को प्रोसेस कर रहा है

अगले घटक में पास करने से पहले

flowchart TB
    OS[Operating System and Network TCP IP Socket Layer]
    Kestrel[Kestrel Web Server HTTP11 HTTP2 HTTP3 QUIC TLS SSL Termination Connection Management]
    Host[Host Layer Application Lifetime Dependency Injection Configuration Logging]

    subgraph Middleware_Pipeline [Middleware Pipeline]
        EH[Exception Handler Middleware catches exceptions]
        HTTPS[HTTPS Redirection Middleware redirects HTTP to HTTPS]
        Static[Static Files Middleware serves static content]
        Routing[Routing Middleware matches request to endpoint]
        AuthN[Authentication Middleware validates identity]
        AuthZ[Authorization Middleware validates permissions]
        Custom[Custom Middleware app specific logic]
        EndpointMW[Endpoint Middleware executes matched endpoint]
    end

    EndpointExec[Endpoint Execution MVC Controllers and Actions Razor Pages Minimal APIs gRPC SignalR]
    Response[Response Generation flows back through middleware]
    BackKestrel[Back to Kestrel]
    Client[Back to Client]

    OS --> Kestrel --> Host --> EH --> HTTPS --> Static --> Routing --> AuthN --> AuthZ --> Custom --> EndpointMW --> EndpointExec --> Response --> BackKestrel --> Client

स्क्विड को छोटा-शोभाजित करता है

फिर (बदों को बुराई से) झिड़क कर डाँटने वाले की (क़सम)

बाहर जाने वाले अनुक्रिया को प्रक्रिया करें

अगले घटक को कार्यान्वित करने के बाद

उच्च- अव्वल-कारक

चलो एक अनजाने में सम्पूर्ण मिट्टी की बनावट की कल्पना करते हैं. NENT 8:

  • प्रवाह निवेदन: पाइपलाइन के माध्यम से एक यात्रा
  • चलो एक आम HTTP अनुरोध का पालन करें क्योंकि यह sques के माध्यम से यात्रा करता है:
  • 1 ..HttpContextनेटवर्क परत
  • जब एक क्लाएंट आपके अनुप्रयोग से निवेदन करता है, तो यह आपके सर्वर पर रॉ टीसीपी/P पैकेट के रूप में आता है.

ऑपरेटिंग सिस्टम के नेटवर्क स्टैक इन पैकेटों को एक संपूर्ण एचटीटीपी निवेदन में एकत्र करता है.

2

  • केस्टल वेब सर्वर
  • केआईआरल, एनईआईएस. नेटटीई का क्रास-प्लेटफॉर्म वेब सर्वर, निवेदन प्राप्त करता है.
  • केस्टल:
  • एचटीटीपी प्रोटोकॉल को पार करता है (HTTP/1. 1, HTTP/2, या HTTP/3)

यदि HTTP प्रयोग में लिया जाता है तो टीएलएस/SSL विगोपन करता है

बनाता है

  • वस्तु जो निवेदन तथा प्रतिक्रिया दोनों का प्रतिनिधित्व करता हैHttpContext
  • अनुप्रयोग के मध्य- एलबम को पास करना सक्षम करता है
  • 3
  • होस्ट परत
  • होस्ट चलाने का वातावरण प्रदान करता है.

यह:

अनुप्रयोग जीवन प्रबंधित करता है

  • संक्षिप्त सूचना पत्र डालने का सन्दूक
  • केआईओस्लेव कॉन्फ़िगरेशन तथा लॉगिंगComment
  • बीच में समताप को चालू करता है
  • मिडैम पिपेट

यह है जहां अपने अनुप्रयोग तर्क शुरू होता है.

प्रत्येक मध्य- भाग अवयव:

प्राप्त करता है

  • अपने विशिष्ट फंक्शन को पूरा करता है
  • निर्धारित करता है कि क्या अगले मध्य- आंतरिक हॉल को कॉल करना है या छोटा-center
  • आगे भेजने से पहले निवेदन परिवर्धित कर सकते हैं
  • इसके वापस आने के बाद प्रतिक्रिया संशोधित कर सकते हैं

5.

sequenceDiagram
    autonumber
    participant Client
    participant OS as OS/Network
    participant Kestrel
    participant Host
    participant MW as Middleware Pipeline
    participant Endpoint as Endpoint Execution

    Client->>OS: HTTP request
    OS->>Kestrel: Forward request
    Kestrel->>Host: Create HttpContext
    Host->>MW: Invoke pipeline
    MW->>Endpoint: Route matched, execute
    Endpoint-->>MW: Response
    MW-->>Kestrel: Response after post-processing
    Kestrel-->>OS: Send HTTP response
    OS-->>Client: Response delivered

अंत- बिन्दु चलाना

यदि निवेदन पूरे मध्य- बिन्दु के माध्यम से किया जाता है, तो यह एक अंत- बिन्दु तक पहुँचता है:

एमवीसी में ब्रिज का कामHttpContextराइसर पृष्ठ में एक पृष्ठ नियंत्रक

public abstract class HttpContext
{
    // The incoming request
    public abstract HttpRequest Request { get; }

    // The outgoing response
    public abstract HttpResponse Response { get; }

    // User identity and authentication
    public abstract ClaimsPrincipal User { get; set; }

    // Request-scoped services
    public abstract IServiceProvider RequestServices { get; set; }

    // Connection information
    public abstract ConnectionInfo Connection { get; }

    // WebSocket support
    public abstract WebSocketManager WebSockets { get; }

    // Request cancellation
    public abstract CancellationToken RequestAborted { get; set; }

    // Session state
    public abstract ISession Session { get; }

    // Generic feature collection
    public abstract IFeatureCollection Features { get; }

    // And more...
}

न्यूनतम एपीआई्स में एक मार्ग हैंडलरHttpContext.

gRPC सेवा विधि

एक सिग्नल-RETHENT विधि

// Basic middleware signature
public delegate Task RequestDelegate(HttpContext context);

// Middleware can be implemented as a method
app.Use(async (context, next) =>
{
    // Do something before the next middleware
    Console.WriteLine($"Request: {context.Request.Path}");

    // Call the next middleware
    await next(context);

    // Do something after the next middleware
    Console.WriteLine($"Response: {context.Response.StatusCode}");
});

अंत बिन्दु अपने व्यापार तर्क कार्य करता है और एक प्रतिक्रिया बनाता है.

public delegate Task RequestDelegate(HttpContext context);

अनुक्रिया प्रवाह

प्रतिक्रिया बारी में मध्य- ब्रेक के माध्यम से वापस प्रवाहित होती है:

हर मध्य भाग में जवाब का पता लगाया जा सकता है या परिवर्धित कर सकता है

var builder = WebApplication.CreateBuilder(args);
var app = builder.Build();

// Middleware 1: Logging
app.Use(async (context, next) =>
{
    Console.WriteLine($"[{DateTime.UtcNow:yyyy-MM-dd HH:mm:ss}] Request started: {context.Request.Method} {context.Request.Path}");

    await next(context);

    Console.WriteLine($"[{DateTime.UtcNow:yyyy-MM-dd HH:mm:ss}] Request finished: {context.Response.StatusCode}");
});

// Middleware 2: Custom header
app.Use(async (context, next) =>
{
    context.Response.Headers["X-Custom-Header"] = "Hello from middleware!";

    await next(context);
});

// Middleware 3: Short-circuit for specific path
app.Use(async (context, next) =>
{
    if (context.Request.Path == "/health")
    {
        context.Response.StatusCode = 200;
        await context.Response.WriteAsync("Healthy");
        return; // Short-circuit - don't call next()
    }

    await next(context);
});

// Endpoint
app.MapGet("/", () => "Hello World!");

app.Run();

शीर्ष निश्चित रूप से बनाया गया हैhttp://localhost:5000/प्रतिक्रिया मुख्य भाग लिखा गया है

Console output:
[2024-01-15 10:30:45] Request started: GET /
[2024-01-15 10:30:45] Request finished: 200

Browser output:
Hello World!

Response headers:
X-Custom-Header: Hello from middleware!

केआईआरल क्लाइंट के लिए HTTP प्रतिक्रिया भेजता हैhttp://localhost:5000/health:

Console output:
[2024-01-15 10:30:50] Request started: GET /health
[2024-01-15 10:30:50] Request finished: 200

Browser output:
Healthy

Response headers:
X-Custom-Header: Hello from middleware!

निवेदन/ फिर से लोड करें अनुक्रम आरेख/healthकुंजी कॉनक्शन्स

+/- संदर्भ

वह

  1. **स्कोर में केंद्रीय वस्तु है.**यह Spriptses:

  2. जो कुछ भी आप वर्तमान अनुरोध के बारे में पता करने की जरूरत है और जो कुछ भी आप प्रतिक्रिया बनाने की जरूरत है वह है के माध्यम से पहुँच गया हैमिडैम

  3. **मध्य ऐंपांस्क में निर्माण ब्लॉक है.**अपने छोटे से छोटे, मध्यवेर में एक ऐसा कार्य है जो निवेदन करता है:

  4. डेलिगेट आग्रहएक निवेदन एक फंक्शन है जो कि एचटीटीपी निवेदन प्रक्रिया कर सकता है.

  5. **पूरे मध्य - युग के बीच का निवेदन प्रतिनिधियों की एक श्रृंखला से किया जाता है:**हर मध्य भाग में अगले प्रतिनिधि को रैप करता है, कॉल की एक घोंसले की जंजीर बना देता है.

एक सरल उदाहरण

चलो कम से कम Abe. Nint कोर 8 अनुप्रयोग देखते हैं कि :

जब आप भेंट करते हैं

  • **, आप देखेंगे:**जब आप भेंट करते हैं

  • **ध्यान दें कि कैसे तीसरा मध्य-पूर्व छोटे-छोटे-छोटे-छोटे-छोटे-छोटे युद्ध के लिए।**मार्ग, लेकिन इसके पहले भी सारे मध्यवे को मौत के घाट उतार दिया गया.

  • **यह क्यों ज़रूरी है?**समझ लेना अत्यावश्‍यक है क्योंकि:

  • परफ़ॉर्मेंस ऑप्टीमाइज़ेशन: मौत के आदेश को जानना आपको महँगे ऑपरेशन करने और गैर - ज़रूरी काम से दूर रहने में मदद देता है ।

  • क्रास-चिंग चिंता: लॉगिंग, प्रमाणीकरण, त्रुटि, और अन्य चिन्ताओं को लागू करने के लिए मध्य खुदा है जो सभी निवेदनों को प्रभावित करता है.IStartupFilter, IHostedServiceडिबगिंग

: जब कोई गलती हो जाती है, तो उसे समझने से आपको पता चलता है कि समस्या कहाँ आयी थी ।

  • मनपसंद विस्तार
  • : आप फ्रेमवर्क की क्षमता को बढ़ाने के लिए शक्तिशाली मध्य- सेंटर बना सकते हैं.
  • HttpContextसुरक्षा
  • : अपने अनुप्रयोग को प्राप्त करने के लिए किस तरह प्रमाणीकरण और अधिकार के योग्य होना ज़रूरी है?
  • अगला क्या है?

इस पहले भाग में, हमने यह समझ से आधार स्थापित किया है कि यह कैसे बनावटी है, और कैसे इसके माध्यम से प्रवाह की मांग की है.

logo

© 2026 Scott Galloway — Unlicense — All content and source code on this site is free to use, copy, modify, and sell.