मेरे पास एक एमवीसी प्रोजेक्ट है जो बाहरी रूप से सामने आया है। मेरे पास एक आंतरिक वेब एपीआई प्रोजेक्ट है।एक वेब एपीआई नियंत्रक के लिए एक एमवीसी नियंत्रक प्रॉक्सी बनाना
मेरे नियंत्रण से परे कारणों से, मैं सीधे वेब एपीआई प्रोजेक्ट का पर्दाफाश नहीं कर सकता और मैं अपने एमवीसी प्रोजेक्ट में वेब एपीआई कंट्रोलर नहीं जोड़ सकता।
मुझे एक एमवीसी नियंत्रक बनाने की आवश्यकता है जो एक वेब एपीआई नियंत्रक के लिए प्रॉक्सी के रूप में कार्य करेगा। मुझे एमवीसी कंट्रोलर से प्रतिक्रिया की आवश्यकता है जैसे कि वेब एपीआई को सीधे कॉल किया गया था।
इसे पूरा करने का सबसे अच्छा तरीका क्या है?
क्या मेरे पास अब तक की तुलना में बेहतर दृष्टिकोण है?
मैं जो त्रुटि प्राप्त कर रहा हूं उसे ठीक कैसे कर सकता हूं?
MyMVCController
[HttpGet]
public HttpResponseMessage GetData(HttpRequestMessage request)
{
...
var response = proxy.GetData();
return request.CreateResponse();
}
MyProxyClass
public HttpResponseMessage GetData()
{
...
return HttpRequest(new HttpRequestMessage(HttpMethod.Get, uri));
}
private HttpResponseMessage HttpRequest(HttpRequestMessage message)
{
HttpResponseMessage response;
...
using (var client = new HttpClient())
{
client.Timeout = TimeSpan.FromSeconds(120);
response = client.SendAsync(message).Result;
}
return response;
}
MVC नियंत्रक में, मैं अनुरोध पर एक InvalidOperationException हो रही है:
यहाँ मैं अब तक किया है .CreateResponse() लाइन। त्रुटि कहती है:
अनुरोध में कोई कॉन्फ़िगरेशन ऑब्जेक्ट नहीं है या प्रदान की गई कॉन्फ़िगरेशन शून्य थी।
किसी भी मदद की सराहना की जाएगी। मैंने Google और StackOverflow की खोज की है लेकिन मुझे एमवीसी और वेब एपीआई के बीच इस प्रॉक्सी बनाने के लिए एक अच्छा समाधान नहीं मिला है।
धन्यवाद!
क्या वह हमेशा 200 स्थिति कोड वापस नहीं करेगा? मुझे वेब एपीआई से प्रतिक्रिया के किसी भी स्थिति कोड को संरक्षित करने की आवश्यकता है। साथ ही, मैं नहीं चाहता कि वेब एपीआई ऑब्जेक्ट को क्रमबद्ध करने के लिए, प्रॉक्सी डी-सीरियलाइज करें, और फिर एमवीसी ऑब्जेक्ट को फिर से क्रमबद्ध करें। – jkruer01
आप हमेशा उस स्थिति कोड को वापस कर सकते हैं जिसके परिणामस्वरूप आप वेब एपीआई कॉल – aleha
से प्राप्त परिणाम पर आधार चाहते हैं, धारावाहिक, डी-सीरियलाइज, फिर से समस्या को क्रमबद्ध करने के बारे में क्या? – jkruer01