पास करता है मैं POST
को controller
से दूसरे controller
पर करने का प्रयास कर रहा हूं। controller
दोनों अलग-अलग परियोजनाओं से हैं। एक प्रोजेक्ट प्रेजेंटेशन लेयर अनुकरण करने के लिए काम कर रहा है (जिसे मैं यहां टेस्ट प्रोजेक्ट कहूंगा)।HttpClient एकाधिक सरल पैरामीटर
परीक्षण प्रोजेक्ट से मैं अन्य नियंत्रक को 2 सरल string
पैरामीटर पास करने की कोशिश कर रहा हूं जिसे मैं प्रक्रिया कहूंगा।
var values = new List<KeyValuePair<string, string>>();
values.Add(new KeyValuePair<string, string>("id", param.Id.Value));
values.Add(new KeyValuePair<string, string>("type", param.Type.Value));
var content = new FormUrlEncodedContent(values);
using (var client = new HttpClient())
{
client.BaseAddress = new Uri(url);
client.DefaultRequestHeaders.Clear();
client.DefaultRequestHeaders.AcceptLanguage.Add(new StringWithQualityHeaderValue("nl-NL"));
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
string token = param.token.Value;
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token);
var response = client.PostAsync("/api/Process/Product", content).Result;
if (response.IsSuccessStatusCode)
{
var result = response.Content.ReadAsStringAsync().Result;
return Request.CreateResponse(HttpStatusCode.OK, result);
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, "fail");
}
और प्रक्रिया नियंत्रक में, मैं इस तरह इसे प्राप्त करने के कोशिश कर रहा हूँ:
लेकिन यह इस controller
कभी नहीं पहुंचता है। मुझे हमेशा "स्थिति नहीं मिला" मिलता है।
तो मैं HttpClient()
के साथ 2 सरल पैरामीटर कैसे पास कर सकता हूं?
तुम क्यों GetAsync का उपयोग नहीं करते? मतलब आपको पोस्ट से प्राप्त करने के लिए Verb बदल रहा है। – NMK
क्योंकि मैं केवल 'जीईटी' के साथ 1 पैरामीटर पास कर सकता हूं। हालांकि मैंने आपके समाधान की कोशिश की, लेकिन काम नहीं किया। यह प्रक्रिया में नहीं आ रहा है 'नियंत्रक' – Quoter