有没有人试图这样做?据我所知,谷歌没有为此提供.NET客户端库(我发现的唯一例子是Python和PHP)。我遇到的困难是它似乎想要在同一个请求中上传文件和JSON请求体。任何信息将不胜感激。
答案 0 :(得分:1)
我能够弄清楚。在.NET中(使用HttpClient),您可以使用
using (MultipartFormDataContent content = new MultipartFormDataContent("----------" + DateTime.Now.ToString(CultureInfo.InvariantCulture)))
{
content.Add(new StringContent(JsonConvert.SerializeObject(uploadReferenceRequest), Encoding.UTF8, "application/json"));
StreamContent audioContent = new StreamContent(new MemoryStream(buffer));
audioContent.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream");
content.Add(audioContent);
using (HttpResponseMessage response = await this.Client.PostAsync(url, content))
{
string responseContent = await response.Content.ReadAsStringAsync();
}
}
关键是在每个数据部分设置内容类型,第一个是“application / json”,实际声音数据是“application / octet-stream”。希望其他人觉得这很有用。