[Java教程]使用pcs api往免费的百度网盘上传下载文件

0 2016-03-16 17:00:05

百度个人云盘空间大,完全免费,而且提供了pcs api供调用操作文件,在平时的项目里往里面保存一些文件是很实用的。

环境准备:

开通读写网盘的权限及获取access_token:http://blog.csdn.net/langyuezhang/article/details/47206621

百度官方pcs api文档:http://developer.baidu.com/wiki/index.php?title=docs/pcs/overview,上面有各种语言的SDK,我用的laravel5,直接导里面的php SDK还用不了,稍做了修改才能用的。

看完上面两篇文章,基本就可以使用了,下面贴出写直接把用户选择的图片预览然后upload到网盘,上传的api:https://pcs.baidu.com/rest/2.0/pcs/file?method=upload&path=%2fapps%2wp2pcs%2f1.JPG&access_token=***红色部分是固定的,因为只允许上传到这个目录下,实际对应到网盘的目录是我的网盘/我的应用数据/wp2pcs、,无需先创建目录再上传文件,只需要指定路径,它会自动创建,如你想把图片上传到/apps/wp2pcs/img下,path就写/apps/wp2pcs/img/1.jpg就可以了。下面是把用户在网页上选择的图片,预览后直接上传到网盘的代码,参照了网上的例子:预览://图片上传预览 IE是用了滤镜。function previewImage(file, product){ getPhotopty(); console.log("previewImage"); uploadAndSubmit(product); var div = document.getElementById('preview' + product); var fileName = file.value; //upload(); if (file.files) { var i = 0; var funAppendImage = function () { var _file = file.files[i]; if (_file) { var reader = new FileReader() reader.onload = function (evt) { fileName = _file.name; div.innerHTML += '

X

'; var img = document.getElementById('imghead' + product + fileName); img.src = evt.target.result; i++; funAppendImage(); } reader.readAsDataURL(_file); } }; funAppendImage(); } $('#coverBg').show(); $('#coverDiv').show(); //$("#uploadFrm" + product).submit();}

上传:var access_token = "***********";var baseUrl = "https://c.pcs.baidu.com/rest/2.0/pcs/";function uploadAndSubmit(product) { console.log("start uploadAndSubmit"); if (typeof FileReader == 'undefined') { alert("你的浏览器不支持FileReader接口!"); } var taskName = $("#txtTask").val() + "-" + $("#txtTask2").val(); var form = document.forms["uploadFrm" + product]; console.log("form:" + form); var fileCtrl = "filectrl" + product; console.log("filectrl:" + fileCtrl); //if (form[fileCtrl].files.length > 0) console.log($("#filectrl" + product)[0]); if ($("#filectrl" + product)[0].files.length > 0) { for (var i = 0; i < $("#filectrl" + product)[0].files.length; i++) { var file = form[fileCtrl].files[i]; console.log(file.name); var filePath = "%2fapps%2fwp2pcs%2f" + taskName + "%2f" + file.name; console.log("add exif info to db"); getExifIinfo(taskName, file, product, filePath); //document.getElementById("bytesRead").textContent = file.size; console.log("start ); var xhr = new var url = baseUrl + "file?method=upload&path=%2fapps%2fwp2pcs%2f" + taskName + "%2f" + file.name + "&access_token=" + access_token + "&ondup=overwrite&count=" + i; console.log(url); xhr.open("POST", url, true); var formData = new FormData(); formData.append("file", file); console.log("onreadystatechange"); xhr.onreadystatechange = function () { console.log("onreadystatechange start"); //console.log(xhr.status); if (xhr.readyState == 4) { if (xhr.status == 200) { console.log("upload complete"); console.log("response: " + xhr.responseText); var result = $.parseJSON(xhr.responseText); if (result.hasOwnProperty("path")) { $("#reusltMsg").append('

上传成功.

'); } else { $("#reusltMsg").append('

上传失败.

'); } } else { $("#reusltMsg").append('

上传失败(200).

'); } } $('#coverBg').hide(); $('#coverDiv').hide(); } xhr.send(formData); } } else { alert("Please choose a file."); $('#coverBg').hide(); $('#coverDiv').hide(); }}

本文网址:http://www.shaoqun.com/a/200787.html

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:admin@shaoqun.com。

百度

0

java 百度网盘上传_[Java教程]使用pcs api往免费的百度网盘上传下载文件相关推荐

  1. java 百度网盘上传_使用pcs api往免费的百度网盘上传下载文件的方法

    百度个人云盘空间大,完全免费,而且提供了pcs api供调用操作文件,在平时的项目里往里面保存一些文件是很实用的. 环境准备: 开通读写网盘的权限及获取access_token:http://blog ...

  2. 阿里云网盘公测_这软件终于开始公测了,百度网盘克星

    自从阿里云推出[阿里云网盘]这款产品之后,闹得是沸沸扬扬,虽然现在还没正式推出,但是已经有超多小伙伴表示等它出来以后就放弃百度网盘,毕竟度盘这限速实在有点折磨人 相比之下,阿里云网盘的上传下载不限速+ ...

  3. u盘解密软件_【精彩文章】基于STM32的指纹识别U盘设计

    U盘是我们日常生活工作中经常使用到的工具之一,它能够帮我们存储和拷贝重要的文件和数据信息.它小巧便于携带.存储容量大.价格便宜.性能可靠.U盘体积很小,仅大拇指般大小,重量极轻,一般在15克左右,特别 ...

  4. python下载网页中的pdf文件_【Python】Python的urllib模块、urllib2模块批量进行网页下载文件...

    由于需要从某个网页上下载一些PDF文件,但是需要下载的PDF文件有几百个,所以不可能用人工点击来下载.正好Python有相关的模块,所以写了个程序来进行PDF文件的下载,顺便熟悉了Python的url ...

  5. java文件异步上传_[Java教程]原生javascript实现文件异步上传

    [Java教程]原生javascript实现文件异步上传 0 2017-10-25 19:00:06 效果图: 代码:(demo33.jsp) demo33.jsp名称文件确定 本文网址:http:/ ...

  6. java函数返回多个值_深入理解被调函数与主调函数之间的传值、传址、值返回、址返回...

    函数的英文是function,有功能的意思,函数的作用在于合理分配功能,增强程序的可读性.合理分解功能,降低程序的复杂性.隐藏函数内部的数据和实现,尽可能将问题局限于函数本身. 函数可以理解为一种功能 ...

  7. java中如何设置浏览器宽度_[Java教程]关于JS中获取浏览器高度和宽度值的多种方法(多浏览器)_星空网...

    关于JS中获取浏览器高度和宽度值的多种方法(多浏览器) 2017-08-07 0 三种浏览器获取值方法 IE中: document.body.clientWidth ==> BODY对象宽度 d ...

  8. java 从控制台输入一个正整数_编程输出该正整数各位数字之和_C语言 从键盘上输入一个正整数,计算并输出该数的各位数字之和...

    点击查看C语言 从键盘上输入一个正整数,计算并输出该数的各位数字之和具体信息 答:思路:定义变量a接受键盘输入和变量sum保存a的各位数字之和,依次对a进行除10操作,并把a除10的余数加到sum中, ...

  9. java画股道站图_「游资股道指标库」通达信操盘主图分析公式

    七天线:MA(C,7),COLORGRAY; 工作线:(EMA(C,17)) ,POINTDOT,LINETHICK4,COLORYELLOW; 生命线:(MA(C,25)) ,LINETHICK2, ...

  10. Java对图片懒加载_[Java教程]JQuery实现图片懒加载_星空网

    JQuery实现图片懒加载 2018-08-16 0 懒加载的原因: 对于图片过多的场景,为了提高页面的加载速度,降低服务器的负载,增强用户体验,我们对还没出现在视野的图片先不加载,当元素出现在我们视 ...

最新文章

  1. Microbiome:污水处理厂的微型真核肠道寄生虫:多样性、活性和去除
  2. SQLMAP使用笔记
  3. 重命名数据库表空间和数据文件
  4. mac好用大java_2020 最后,搞个 Mac 玩玩
  5. 什么是python函数_Python之什么是函数
  6. 首次公开!单日600PB的计算力--阿里巴巴EB级大数据平台的进击
  7. mysql中的操作指令,MySQL中常用指令操作的介绍(代码示例)
  8. 【HDU - 3410 】 Passing the Message(单调栈)
  9. 面试官系统精讲Java源码及大厂真题 - 08 HashMap 源码解析
  10. 使用.NET为Window Mobile写自动化工具的无奈之处.
  11. 2011年4月51CTO壁纸点评活动获奖名单【已结束】
  12. 利用modelarts和物体检测方式识别验证码
  13. delphi 软件在线人数统计_【大学分析】计算机爆满,软件爆冷!这所985大学考研分数截然不同!...
  14. 性能测试--jmeter结合charles,以及charles的基本使用【11】
  15. qt 使用msvc编译器出现中文乱码的问题
  16. jpi多表联查_使用mybatis进行多表联查
  17. jQuery获取元素上一个、下一个、父元素、子元素
  18. python证书有什么用_用Python在获奖证书写上获奖者的名字
  19. 报SQL异常Parameter index out of range (1 > number of parameters, which is 0).
  20. 和2016年的自己握手言和

热门文章

  1. Java成神之路(持续更新)
  2. RGB-D SLAM in Dynamic Environments Using Static Point Weighting论文笔记
  3. 删除IE加载项及取消加载项的提示
  4. 数据分析步骤(思维导图)
  5. Django Grappelli后台管理
  6. 游戏原画,掌握角色设计2个小技巧,你也能画好角色
  7. leetcode237
  8. android FTP上传下载文件
  9. NoSQLBooster4MongoDB - 用SQL查询MongoDB
  10. viper4Android md风格,ViPER4Android音效 XHIFX版