国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

使用pcs api往免費的百度網盤上傳下載文件的方法

2019-11-20 10:22:52
字體:
來源:轉載
供稿:網友

百度個人云盤空間大,完全免費,而且提供了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 += '<div class="col-xs-6 col-md-3"><a style="float:right;cursor:pointer;" onclick="del(this)">X</a><div class="thumbnail"><img id=imghead' + product + fileName + '></div></div>';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 XMLHttpRequest");var xhr = new XMLHttpRequest();console.log(access_token);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('<div class="alert alert-success" role="alert"> 上傳成功.</div>');} else{$("#reusltMsg").append('<div class="alert alert-danger" role="alert"> 上傳失敗.</div>');}} else{$("#reusltMsg").append('<div class="alert alert-danger" role="alert"> 上傳失敗(200).</div>');}}$('#coverBg').hide();$('#coverDiv').hide();}xhr.send(formData);}} else{alert("Please choose a file.");$('#coverBg').hide();$('#coverDiv').hide();}}

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 古浪县| 宜城市| 屏东市| 濮阳县| 黎平县| 玉山县| 灯塔市| 女性| 荥阳市| 共和县| 时尚| 紫阳县| 岳普湖县| 青龙| 灵宝市| 招远市| 濮阳市| 喀喇沁旗| 读书| 屏山县| 石楼县| 通河县| 兴业县| 林口县| 岱山县| 巫溪县| 华蓥市| 方城县| 商都县| 江华| 镇雄县| 雷州市| 太和县| 武宁县| 河间市| 林周县| 山东| 白水县| 娱乐| 五台县| 太仆寺旗|