传输音频到服务器cordova
问题描述:
我正在使用cordova媒体插件来录制voice.Once我记录它。我想把它发送到服务器。为此,我正在使用FileUpload和FileTransfer.But我面临着获取录制文件的问题。如何获取录制的音频文件?我已经通过cordova文件插件文档,但没有正确理解。我发现这个错误代码1我使用科尔多瓦和PHP,它不为我工作,你可以帮助请。传输音频到服务器cordova
<html>
<head>
<script src="cordova.js"></script>
<script src="mvc/js/jquery.min.js"></script>
<script>
var filename;
var mediaRec;
function recordAudio() {
filename = new Date().getTime();
mediaRec = new Media(filename, onSuccess, onError);
mediaRec.startRecord();
}
function onSuccess(){
alert("onSuccess " +filename);
}
function onError(){}
function stopRecord(fileName){
mediaRec.stopRecord();
uploadVoice(filename,"");
}
function uploadVoice(fileName, dirName) {
var win = function (r) {
alert("Code = " + r.responseCode);
console.log("Response = " + r.response);
console.log("Sent = " + r.bytesSent);
};
var fail = function(error) {
alert("fail "+error.code);
alert("Source = " + error.source);
alert("Target = " + error.target)
};
// file system fail
var fsFail = function(error) {
alert("file system error");
//alert("fsfail "+error.code);
};
var dirFail = function(error) {
alert("Directory error");
};
var fileURI;
var gotFileSystem = function (fileSystem) {
fileSystem.root.getDirectory(dirName, {
create: false
}, function (dataDir) {
fileURI = dataDir.toURL();
fileURI = fileURI + '/' + fileName;
var options = new FileUploadOptions();
options.fileKey = "file";
options.fileName = fileURI.substr(fileURI.lastIndexOf('/') + 1);
options.mimeType = "Audio/3gpp";
options.chunkedMode = false;
options.headers = { Connection: "close" };
var ft = new FileTransfer();
ft.upload(fileURI, "url", win, fail, options);
}, dirFail);
};
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, gotFileSystem, fsFail);
}
</script>
<body>
<button onClick="recordAudio();">Start</button><br/><br/>
<button onClick="stopRecord();">Stop</button>
</body>
</head>
答
ft.upload(fileURI, "url", win, fail, options);
在上面的代码中,“URL”必须是服务器端脚本可以说PHP脚本应该处理这个文件,应该移动到指定位置的服务器。
请确保您要移动音频文件的服务器文件夹应具有必要的写入权限。
+0
url这是我的服务器的位置https://192.168.43.152/../platforms/android/assets/www/upload.php,但给相同的错误传输文件代码1 –
你说“错误代码1”?你从哪里得到它?哪条线?这是一个汇编问题吗? – e666
文件传输不起作用的问题给我错误代码1 –