हमारे एएसपी.नेट कोर आधारित वेब एप्लिकेशन में, हम निम्नलिखित चाहते हैं: कुछ अनुरोधित फ़ाइल प्रकारों को कस्टम कंटेंट टाइप को प्रतिक्रिया में प्राप्त करना चाहिए। जैसे .map
को application/json
पर नक्शा करना चाहिए। "पूर्ण" एएसपी.नेट 4.x में और आईआईएस के साथ संयोजन में वेब.कॉन्फिग <staticContent>/<mimeMap>
का उपयोग करना संभव था और मैं इस व्यवहार को कस्टम एएसपी.नेट कोर मिडलवेयर से बदलना चाहता हूं।मिडलवेयर प्रतिक्रिया सेट करने के लिए ContentType
public async Task Invoke(HttpContext context)
{
await nextMiddleware.Invoke(context);
if (context.Response.StatusCode == (int)HttpStatusCode.OK)
{
if (context.Request.Path.Value.EndsWith(".map"))
{
context.Response.ContentType = "application/json";
}
}
}
दुर्भाग्य से, निम्न अपवाद को मिडलवेयर श्रृंखला पैदावार के बाकी लागू करने के बाद context.Response.ContentType
सेट करने का प्रयास:
तो मैं (संक्षिप्तता के लिए सरलीकृत) निम्नलिखित की कोशिश की
System.InvalidOperationException: "Headers are read-only, response has already started."
कैसे क्या मैं एक मिडलवेयर बना सकता हूं जो इस आवश्यकता को हल करता है?