百度个人云盘空间大,完全免费,而且提供了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,上面有各种语言的http://www.cppcns.comSDK,我用的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 += '

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.www.cppcns.comlength > 0)

console.log($("#filectrl" + product)[0]);

if ($("#filectrl" + product)[0].files.length > 0)

{

for (var编程客栈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();

}

}

本文标题: 使用pcs api往免费的百度网盘上传下载文件的方法

本文地址: http://www.cppcns.com/ruanjian/java/145145.html

java 百度网盘上传_使用pcs api往免费的百度网盘上传下载文件的方法相关推荐

  1. java http 下载文件_JAVA通过HttpURLConnection 上传和下载文件的方法

    本文介绍了JAVA通过HttpURLConnection 上传和下载文件的方法,分享给大家,具体如下: HttpURLConnection文件上传 HttpURLConnection采用模拟浏览器上传 ...

  2. python get 下载 目录_python实现支持目录FTP上传下载文件的方法

    本文实例讲述了python实现支持目录FTP上传下载文件的方法.分享给大家供大家参考.具体如下: 该程序支持ftp上传下载文件和目录.适用于windows和linux平台. #!/usr/bin/en ...

  3. Java通过FTP服务器上传下载文件的方法

    本文介绍了如何使用Apache Jakarta Commons Net(commons-net-3.3.jar)基于FileZilla Server服务器实现FTP服务器上文件的上传/下载/删除等操作 ...

  4. python云盘搭建教程_超简单!基于Python搭建个人“云盘”,目前最好用的个人云盘...

    超简单!基于Python搭建个人"云盘",目前最好用的个人云盘 1. 简介 当我们想要从本地向云服务器上传文件时,比较常用的有pscp等工具,但避免不了每次上传都要写若干重复的代码 ...

  5. 后端根据百度地图真实路径距离_远场语音识别错误率降低30%,百度提基于复数CNN网络的新技术...

    [12月公开课预告],入群直接获取报名地址 12月11日晚8点直播主题:人工智能消化道病理辅助诊断平台--从方法到落地 12月12日晚8点直播:利用容器技术打造AI公司技术中台 12月17日晚8点直播 ...

  6. 怎样在hdfs上创建多级目录文件夹_【HDFS API编程】第一个应用程序的开发-创建文件夹...

    /** * 使用Java API操作HDFS文件系统 * 关键点: * 1)创建 Configuration * 2)获取 FileSystem * 3)...剩下的就是 HDFS API的操作了 * ...

  7. 在Tomcat上挂载预下载文件的方法

    最近公司在开发移动端项目,当然移动端开发肯定少不了在线下载和更新功能,实现方式有很多,先分析一下最简单的Tomcat挂载的方式 文章目录 前言 一.什么是tomcat 二.预下载文件挂载到 Tomca ...

  8. 在Github上下载文件的方法

    在GitHub上下载文件有几种方法: 下载整个仓库:在仓库主页上,点击绿色的"Code"按钮,然后选择"Download ZIP".这将下载整个仓库的ZIP压缩 ...

  9. 从服务器上下载文件的方法

    有时候需要提供一些文件供用户下载,本文就写了一个支持文件下载的方法,供参考: 例子需要下载的是Excel表格,具体实现:. 封装一个下载方法,方便使用: /*** 下载文件* 创建人:A-bing* ...

最新文章

  1. BusinessFrameWork
  2. 数据恢复利器:通过frm文件恢复数据表的sql结构语句
  3. 无法使用共享文件夹?VMware怎么安装VMware Tools? (GCC、kernel headers、make)(失败)
  4. sql server 2008 报表部署:提示输入用户名密码
  5. CentOS 6.7编译安装PHP7
  6. asp.net core集成CAP(分布式事务总线)
  7. arm与linux些许问题,arm-linux中遇到的问题
  8. 2019-2020-1 20175313 《信息安全系统设计基础》第一周学习总结
  9. phpmyadmin创建/导入/导出mysql数据库教程_PhpMyAdmin创建/导入/导出MySQL数据库教程[图文]...
  10. 粘贴PDF,删除空行
  11. 灵格斯词典(电脑端)+欧陆词典(手机端)
  12. ie 无人操作自动关闭_Win10系统下ie浏览器无响应白屏自动关闭如何修复
  13. Excel 点击单元格打钩,再点击取消
  14. asc超级计算机题目,通知公告|2019 ASC 世界大学生超级计算机竞赛(ASC19)报名通知|信息与软件工程学院...
  15. 计算机运行黑屏显示器正常,详细教您电脑主机运行正常显示器黑屏怎么办
  16. Mac 升级 Bash 到最新版本
  17. Java语言为excel添加水印,使用原生POI, (XSSFWorkbook, XSSFSheet), 真正背景图水印效果,非普通图片张贴
  18. Android去除默认提示音
  19. Linux -- 手动配置静态IP
  20. QWebEngineView如何忽略SSL证书错误

热门文章

  1. java 牛生小牛_例题:大牛生小牛的问题解决方法
  2. Qt中线程的简单使用
  3. 安装 Visual Studio 插件 Visual Assist - C语言零基础入门教程
  4. 快速搭建Python+Selenium+Sublime 自动化测试环境方法
  5. 安卓9与10的系统要求_代码开源!支持RISC-V架构的安卓系统终于来了!
  6. php获取表单内的值,PHP获取表单里各项值总结
  7. 计算机专业和机电专业的区别,12届计算机专业和机电专业.doc
  8. 如何手动输入给数组赋值_你是否真的了解VBA数组呢?让我带你认识一下真正的数组...
  9. linux ospf 命令,OSPF单区域配置 - linuxprobe2020的个人空间 - OSCHINA - 中文开源技术交流社区...
  10. 计算机考在职研究生有必要吗,读在职研究生有必要辞掉工作吗?