Ich versuche, eine POST
von einem controller
zu einem anderen controller
zu tun. Beide controller
stammen aus verschiedenen Projekten. Ein Projekt dient dazu, die Präsentationsschicht zu simulieren (die ich hier als Testprojekt bezeichnen werde).HttpClient mehrere einfache Parameter übergeben
Vom Testprojekt versuche ich 2 einfache string
Parameter an die andere Steuerung zu übergeben, die ich den Prozess nennen werde.
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");
}
Und in der Prozesssteuerung, ich versuche es so zu erhalten:
Aber es erreicht dieses controller
nie. Ich bekomme immer einen "nicht gefundenen Statuscode".
Also wie kann ich 2 einfache Parameter mit HttpClient()
übergeben?
Warum nicht GetAsync verwenden? Bedeutung Ändern Sie Verb von Post zu Get. – NMK
Weil ich nur 1 Parameter mit 'GET' übergeben kann. Ich habe zwar deine Lösung versucht, aber nicht funktioniert. Es kommt nicht in dem Prozess "Controller" – Quoter