[英]Post JSON to Azure website
我有一个使用JsonTextWriter创建JSON格式化字符串的字符串。 如果要将其存储在Azure网站中如何与之交互? 我正在考虑使用类似的httpWebRequest
string webAddr = "http://{url to website}/test.json";
HttpWebRequest httpWebRequest = (HttpWebRequest)WebRequest.Create(webAddr);
httpWebRequest.ContentType = "application/json; charset=utf-8";
httpWebRequest.Method = "POST";
StringWriter strwriter = new StringWriter();
JsonTextWriter writer = new JsonTextWriter(strwriter);
writer.WriteStartObject();
writer.WritePropertyName("id");
writer.WriteValue(v.id);
writer.WriteEndObject();
using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream()))
{
string json = strwriter.ToString();
streamWriter.Write(json);
}
但是我似乎无法弄清楚如何将JSON实际发布到文件中。 我有什么想念的吗?
我认为最好将其存储在VM /网站的本地存储中,以避免发生CORS问题,除非Blob存储比本地存储有优势。
您正在那里,接下来您需要实际分发请求:
HttpWebResponse httpWebResponse = (HttpWebResponse)httpWebRequest.GetResponse();
您可以阅读返回的正文(如果需要):
using (httpWebResponse)
{
StreamReader reader = new StreamReader(httpWebResponse.GetResponseStream());
string response_body = reader.ReadToEnd();
}
假设您只是想将主体转储到文件系统中(出于参数考虑):
using (httpWebResponse)
{
...
using (var file = new FileStream("some\path\to\file.json",FileMode.Create,FileAccess.Write,FileShare.None))
{
StreamWriter writer = new StreamWriter(file,Encoding.UTF8);
writer.Write(response_body);
writer.Flush();
}
}
但是,这不适用于非VM网站,因为您可能不得不将文件避开到Blob存储中。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.