课程表

Cordova课程

工具箱
速查手册

Cordova 文件传输

当前位置:免费教程 » 移动开发 » Cordova

此插件用于上传和下载文件。

步骤1 - 安装文件传输插件

我们需要打开命令提示符并运行以下命令来安装插件。

  1. C:\Users\username\Desktop\CordovaProject>cordova plugin add cordova-plugin-file-transfer

步骤2 - 创建按钮

在本章中,我们将向您展示如何上传和下载文件。 让我们在 index.html 中创建两个按钮

  1. <button id = "uploadFile">UPLOAD</button>
  2. <button id = "downloadFile">DOWNLOAD</button>

步骤3 - 添加事件监听器

事件监听器将在onDeviceReady函数的index.js中创建。我们正在添加点击事件和回调函数。

  1. document.getElementById("uploadFile").addEventListener("click", uploadFile);
  2. document.getElementById("downloadFile").addEventListener("click", downloadFile);

步骤4A - 下载功能

此功能将用于从服务器下载文件到设备。 我们已将档案上传到 postimage.org ,让操作更简单。你可能想使用自己的服务器。该函数放置在 index.js 中,并在按下相应的按钮时触发。uri 是服务器下载链接, fileURI 是我们设备上DCIM文件夹的路径。

  1. function downloadFile() {
  2.  
  3. var fileTransfer = new FileTransfer();
  4. var uri = encodeURI("http://s14.postimg.org/i8qvaxyup/bitcoin1.jpg");
  5. var fileURL = "///storage/emulated/0/DCIM/myFile";
  6.  
  7. fileTransfer.download(
  8. uri, fileURL, function(entry) {
  9. console.log("download complete: " + entry.toURL());
  10. },
  11. function(error) {
  12. console.log("download error source " + error.source);
  13. console.log("download error target " + error.target);
  14. console.log("download error code" + error.code);
  15. },
  16. false, {
  17. headers: {
  18. "Authorization": "Basic dGVzdHVzZXJuYW1lOnRlc3RwYXNzd29yZA=="
  19. }
  20. }
  21. );
  22. }

一旦按下下载按钮,该文件将从 postimg.org 服务器下载到我们的移动设备。 我们可以检查指定的文件夹,看看 myFile 是否存在。

Cordova File Transfer Download

控制台输出看起来像这样 -

Cordova File Transfer Download Log

步骤4B - 上传功能

现在让我们创建将文件并将其上传到服务器的函数。 再次,我们希望尽可能简化这一过程,因此我们将使用 posttestserver.com 在线服务器进行测试。uri 值将会链接到发布到 posttestserver

  1. function uploadFile() {
  2. var fileURL = "///storage/emulated/0/DCIM/myFile"
  3. var uri = encodeURI("http://posttestserver.com/post.php");
  4. var options = new FileUploadOptions();
  5. options.fileKey = "file";
  6. options.fileName = fileURL.substr(fileURL.lastIndexOf('/')+1);
  7. options.mimeType = "text/plain";
  8.  
  9. var headers = {'headerParam':'headerValue'};
  10. options.headers = headers;
  11.  
  12. var ft = new FileTransfer();
  13.  
  14. ft.upload(fileURL, uri, onSuccess, onError, options);
  15.  
  16. function onSuccess(r) {
  17. console.log("Code = " + r.responseCode);
  18. console.log("Response = " + r.response);
  19. console.log("Sent = " + r.bytesSent);
  20. }
  21.  
  22. function onError(error) {
  23. alert("An error has occurred: Code = " + error.code);
  24. console.log("upload error source " + error.source);
  25. console.log("upload error target " + error.target);
  26. }
  27. }

现在我们可以按上传按钮来触发此功能。我们将获得控制台输出,确认上传是成功的。

Cordova File Transfer Upload Log

现在我们可以按上传按钮来触发此功能。我们将获得控制台输出,确认上传是成功的。...

Cordova File Transfer Upload Server Response
转载本站内容时,请务必注明来自W3xue,违者必究。
 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号