Je tente de faire une demande POST à un serveur. Les travaux suivants quand je CURL en utilisant Bash git:Demande CURL POST au serveur en C# HttpWebRequest
curl -X POST -H "Content-Type: application/octet-stream" -H "User-Agent: MyUserAgent" --data-binary @MyDocument.xlsx http://myUrl.com
Je sais que je peux faire des requêtes POST en utilisant JSON comme suit (en C#):
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(myUrl);
request.Method = "POST";
request.ContentType = "application/json";
request.Accept = "application/json";
request.UserAgent = myUserAgent;
using (var stream = await request.GetRequestStreamAsync())
{
using (StreamWriter streamWriter = new StreamWriter(stream))
{
streamWriter.Write(myJsonData);
}
}
using (HttpWebResponse webResponse = (HttpWebResponse) await request.GetResponseAsync())
{
using (StreamReader reader = new StreamReader(webResponse.GetResponseStream()))
{
string response = reader.ReadToEnd();
//do stuff with response
}
}
Ma difficulté est de combiner essentiellement les deux. Je sais que je dois changer le request.ContentType à "application/octet-stream", mais ce n'est pas suffisant. Comment puis-je incorporer le "--data-binary @ MyDocument.xlsx" dans le HttpWebRequest? Quelqu'un a des idées? Merci!