पर मूल HTTP एथ जोड़ना मेरे पास एक डब्ल्यूसीएफ HTTP रीस्ट सेवा है और मैं इसे एक अलग प्रोग्रामिंग भाषा में एक HTTP क्लाइंट के साथ जोड़ता हूं जो अपना कस्टम HTTP लिखता है। मैं डब्ल्यूडब्ल्यूडब्ल्यू-प्रमाणीकरण मूलभूत प्रमाणीकरण समर्थन को अपनी डब्ल्यूसीएफ सेवा में जोड़ना चाहता हूं।डब्ल्यूसीएफ आरईएसटी सेवा
मेरे तरीकों इस तरह दिखेगा:
[WebInvoke(UriTemplate = "widgets", Method = "POST")]
public XElement CreateWidget(XElement e)
{
...
}
क्या यह संभव है मुझे किसी भी तरह भेजे HTTP अनुरोध को फिल्टर करने के लिए तो मैं पहले यह ऊपर CreateWidget
की तरह बाकी तरीकों में से प्रत्येक हिट एक वैध मूल प्रमाणीकरण स्ट्रिंग के लिए जाँच कर सकते हैं? नोट: मेरी ऑथ जानकारी मेरे डेटाबेस में stord है।
मूल रूप से मैं अनुरोध शीर्षों में इस के लिए जाँच करना चाहते हैं: Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
और फिर मैं अपने आप को कि स्ट्रिंग पार्स और डेटाबेस में यू/p सत्यापित कर सकें।
web.config फ़ाइल इस प्रकार है:
<?xml version="1.0"?>
<configuration>
<connectionStrings>
<add name="DatabaseConnectionString" connectionString="Data Source=.\SQLEXPRESS;Initial Catalog=Database;Integrated Security=True" providerName="System.Data.SqlClient" />
</connectionStrings>
<system.web>
<compilation debug="true" targetFramework="4.0" />
<httpRuntime maxRequestLength="10485760" />
</system.web>
<system.webServer>
<modules runAllManagedModulesForAllRequests="true">
<add name="UrlRoutingModule" type="System.Web.Routing.UrlRoutingModule, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
</modules>
</system.webServer>
<system.serviceModel>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true" />
<standardEndpoints>
<webHttpEndpoint>
<standardEndpoint name="" helpEnabled="true" automaticFormatSelectionEnabled="true" maxReceivedMessageSize="1048576" maxBufferSize="1048576" />
</webHttpEndpoint>
</standardEndpoints>
</system.serviceModel>
</configuration>
मैंने सुझाए गए चरणों का पालन किया है, लेकिन मॉड्यूल को कभी भी बुलाया नहीं जाता है। मैंने आईआईएस पर बेसिक ऑथ जोड़ने की कोशिश की लेकिन फिर भी, मॉड्यूल को कॉल नहीं किया जाता है। क्या मैं कुछ भूल रहा हूँ? –
मुझे यकीन नहीं है कि यह मेरे लिए क्यों काम करता है लेकिन शायद इससे संबंधित: http://stackoverflow.com/questions/355261/whats-the-difference-between-system-web-and-system-webserver (मैं था वीएस डिबगिंग ऑटो होस्टेड वेब सर्वर के माध्यम से परीक्षण) –
मुझे मैन्युअल रूप से आईआईएस 7.5 में मॉड्यूल जोड़ना पड़ा। –