Die PostAsync
braucht einen anderen Parameter, der HttpContent
sein muss.Wie richte ich HttpContent für meinen zweiten HttpClient PostAsync-Parameter ein?
Wie richte ich einen HttpContent
ein? Es gibt keine Dokumentation überall, die für Windows Phone 8 funktioniert.
Wenn ich GetAsync
tun, funktioniert es gut! aber es muss POST mit dem Inhalt von key = „bla“, etwas = „yay“
// EDIT
Vielen Dank für die Antwort sein ... Das funktioniert gut, aber immer noch ein wenige unsures hier:
public static async Task<string> GetData(string url, string data)
{
data = "test=something";
HttpClient client = new HttpClient();
StringContent queryString = new StringContent(data);
HttpResponseMessage response = await client.PostAsync(new Uri(url), queryString);
//response.Content.Headers.ContentType = new MediaTypeHeaderValue("application/json");
response.EnsureSuccessStatusCode();
string responseBody = await response.Content.ReadAsStringAsync();
return responseBody;
}
die Daten „test = etwas“ ich nahm an der api Seite als Post-Daten „test“ abholen würde, offenbar ist es nicht. Zu einem anderen Thema, ich muss möglicherweise ganze Objekte/Arrays durch Post-Daten, so dass ich denke, json wird am besten sein, dies zu tun. Irgendwelche Gedanken darüber, wie ich Postdaten durchstelle?
Vielleicht so etwas wie:
class SomeSubData
{
public string line1 { get; set; }
public string line2 { get; set; }
}
class PostData
{
public string test { get; set; }
public SomeSubData lines { get; set; }
}
PostData data = new PostData {
test = "something",
lines = new SomeSubData {
line1 = "a line",
line2 = "a second line"
}
}
StringContent queryString = new StringContent(data); // But obviously that won't work
Ich werde das überprüfen. Ich denke, wenn ich das herausfinde, muss ich das irgendwo hinstellen, wo jeder es sehen kann! Das hat mich seit 4 Tagen dazu gebracht, eine einfache REST zu einer API zu bekommen. – Jimmyt1988
Der StringContent funktionierte gut, aber eigentlich kann er die PostData nicht zu der Seite bringen, die ich gerade anrufe: D. Ich bearbeite die Frage, um Ihnen zu zeigen, was ich jetzt gerade habe – Jimmyt1988
Eine schnelle Antwort auf "wie poste ich eine JSON-Repräsentation meiner Klasse" ist "serialisieren das Objekt zu JSON, wahrscheinlich mit JSON.Net", aber das gehört wirklich dazu eine separate Frage. –