auf dem Controller ist Put senden, wie folgend:Httpclient PutAsync keinen Parameter zu api
[HttpPut]
[ActionName("putname")]
public JsonResult putname(string name)
{
var response = ...
return Json(response);
}
Das Problem ist auf die, wenn sie über folgende
using (httpClient = new HttpClient())
{
string name = "abc";
string jsonString = JsonConvert.SerializeObject(name);
var requestUrl = new Uri("http:...../controller/putname/");
using (HttpContent httpContent = new StringContent(jsonString))
{
httpContent.Headers.ContentType = new MediaTypeHeaderValue("application/json");
HttpResponseMessage response = httpClient.PutAsync(requestUrl, httpContent).Result;
}
diese API raubend ‚Dieser Code doesn t übergeben Sie den Parameternamen an den Controller. Ich habe sogar versucht changeing uri zu/putname /“+ Name
Danke für die Antwort. Ich denke, was du gesagt hast, sollte funktionieren. Folgendes habe ich getan. var cUri = neuer Uri ("http: // localhost/cart/coupon"); var jsonString = JsonConvert.SerializeObject (neu {id = "abc"}); HttpResponseMessage cartResponse; mit (HttpContent httpContent = new StringContent (jsonString)) { httpContent.Headers.ContentType = neue MediaTypeHeaderValue ("application/json"); cartResponse = httpClient.PostAsync (cUri, httpContent) .Result; } – fcmaine
Ich benutze das gleiche wie Sie vorgeschlagen, aber nicht funktioniert. –
Schön, das hat auch bei mir funktioniert –