3
我需要一個音頻wav文件發送到的WebAPI控制器爲微軟Bing語音API話費送WAV音頻文件。 我做了什麼是,使用AJAX調用使用JavaScript在客戶端如何使用JavaScript和的WebAPI C#
調用的WebAPI控制器
錄製音頻轉換成BASE64的數據,併發送所述的base64音頻數據 爲好。
3.in的WebAPI控制器,轉換後的數據的base64到字節和發送到restpi(微軟)。
請幫助我如何我可以做所有這些步驟正確
Ajax調用,
$.ajax({
url: 'http://localhost:49818/api/voice',
type: 'POST',
data: base64Data,
dataType: 'json',
contentType: "application/json",
success: function (data) {
alert(data);
},
的WebAPI控制器的方法
string b64 = Request.Content.ReadAsStringAsync().Result;
//string text = System.IO.File.ReadAllText(@"D:\\base64.txt");
var client = new HttpClient();
byte[] toBytes1 = Encoding.ASCII.GetBytes(b64);
var uri = "https://westus.api.cognitive.microsoft.com/spid/v1.0/identificationProfiles/a1cb4a95-9e09-4f54-982b-09632aee7458/enroll?shortAudio=true";
HttpResponseMessage response;
byte[] toBytes = Encoding.ASCII.GetBytes(b64);
using (var content = new ByteArrayContent(toBytes))
{
content.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream");
//content.Headers.ContentType = new MediaTypeHeaderValue("audio/wav");
response = await client.PostAsync(uri, content);
}
確定完成了,然後如何將base64數據轉換爲字節,byte [] toBytes1 = Encoding.ASCII.GetBytes(b64); ..這行越來越 –
看看這裏錯字節:http://stackoverflow.com/questions/6733845/c-sharp-convert-a-base64-byte –
獲得的Web API控制器空值,這裏MYDATA爲空,如何從AjaxCall的把我的數據,我使用的數據:JSON.stringify({ 「MYDATA」:base64Data})..'// POST:API /語音 公共異步無效後([FromBody]串MYDATA) {//code}' –