我一直在使用一台优秀的录音机,它是recorder.js-master。 但我无法使用MVC Controller上传。
这是我的javascript功能。
function AudioUpload(title, description) {
Recorder.upload({
method: "POST",
url: '@Url.Action("Upload", "Audio")',
audioParam: "Recording",
params: {
"Title": title,
"Description": description
},
success: function (responseText) {
alert(responseText.Success);
},
error: function () {
alert("error");
},
progress: NULL
});
}
这是我的AudioController
public JsonResult Upload(VoicePassage passage)
{
//upload Audio
return Json(new { Success = true });
}
我在上传中有一个断点只是为了知道它会进入我的控制器,但事实并非如此。 请帮忙。 这是我遵循的参考。 http://marc.codewisp.com/2013/05/07/in-browser-audio-recording-recorder-js-asp-net-mvc/?replytocom=12#respond
此致
基督教
答案 0 :(得分:2)
我是您关联的原始帖子的作者。
要尝试的一些事情:
Chrome
的{{1}}下,转到Developer Tools
标签并尝试上传。看看它是否正在访问正确的URL。Network
。它不适用于外部JavaScript文件。如果您需要'@Url.Action...'
,您可以在Razor视图中使用它,将其分配给临时全局变量并在外部JavaScript文件中使用它。
在您的视图中,在引用外部JS之前添加以下内容:
@Url.Action
在您的JavaScript文件中,将<script type="text/javascript">
var audioAction = '@Url.Action("Upload", "Audio")';
</script>
更改为'@Url.Action("Upload", "Audio")'
,如:
audioAction