Sto usando System.Net.Http
, ho trovato diversi esempi sul web. Sono riuscito a creare questo codice per effettuare una richiesta di POST
:Come passare un oggetto a HttpClient.PostAsync e serializzare come corpo JSON?
public static string POST(string resource, string token)
{
using (var client = new HttpClient())
{
client.BaseAddress = new Uri(baseUri);
client.DefaultRequestHeaders.Add("token", token);
var content = new FormUrlEncodedContent(new[]
{
new KeyValuePair<string, string>("", "")
});
var result = client.PostAsync("", content).Result;
string resultContent = result.Content.ReadAsStringAsync().Result;
return resultContent;
}
}
tutti lavorando bene. Ma supponiamo di voler passare un terzo parametro al metodo POST
, un parametro chiamato data
. Il param dati è un oggetto come questo:
object data = new
{
name = "Foo",
category = "article"
};
come posso farlo senza creare il KeyValuePair
? Il mio php RestAPI
attende un input JSON, quindi lo FormUrlEncodedContent
dovrebbe inviare correttamente il json raw
. Ma come posso fare questo con Microsoft.Net.Http
? Grazie.
Se ho capito la tua domanda, si desidera inviare il contenuto JSON invece di forma codificata contenuti giusto (e per estensione vuoi che il tuo tipo anonimo sia serializzato come JSON in quel contenuto)? – CodingGorilla
@CodingGorilla yes è un tipo anonimo. – IlDrugo