阿里雲上傳圖片



 小程序上傳可以看這個https://www.jianshu.com/writer#/notebooks/45366587/notes/68450036

最近需要用到上傳本地圖片到阿里雲,自己做了個demo

<script src="http://gosspublic.alicdn.com/aliyun-oss-sdk-4.4.4.min.js"></script> //引入阿里雲sdk文件
<input type="file" id="file" /> <script type="text/javascript"> var stokeUrl = "*********"; //阿里雲地址 var accessKeyId = '', accessKeySecret = '', stsToken = ''; ajax("GET", stokeUrl, function(res) { var str = JSON.parse(res); accessKeyId = str.data.accessKeyId, accessKeySecret = str.data.accessKeySecret, stsToken = str.data.securityToken; //獲得權限 var client = new OSS.Wrapper({ region: 'oss-cn-hangzhou',//你自己的地址 accessKeyId: accessKeyId, accessKeySecret: accessKeySecret, stsToken: stsToken, bucket: '*****'//文件名稱 }); document.getElementById('file').addEventListener('change', function(e) { var file = e.target.files[0]; console.log(e); var storeAs = 'upload-file'; //圖片名 storeAs = 'test/'+file.name //所要上傳的文件名拼接 (test/) console.log(storeAs); client.multipartUpload(storeAs, file).then(function(result) { console.log("上傳成功"); console.log(result); //獲得圖片地址 var src = 'https://www.treeholeapp.com/' + result.name; $("#img").attr('src', src);//賦值給img元素 }).catch(function(err) { console.log("上傳失敗"); console.log(err); }); }); }) function ajax(type, url, fnSucc, fnFaild) { //1.創建Ajax對象 var oAjax = null; if(window.XMLHttpRequest) { oAjax = new XMLHttpRequest(); } else { oAjax = new ActiveXObject("Microsoft.XMLHTTP"); } //2.連接服務器 oAjax.open(type, url, true); //3.發送請求 oAjax.send(); //4.接收服務器的返回 oAjax.onreadystatechange = function() { if(oAjax.readyState == 4) //完成 { if(oAjax.status == 200) //成功 { fnSucc(oAjax.responseText); } else { if(fnFaild) fnFaild(oAjax.status); } } }; } </script>

  阿里雲上傳到服務器主要步驟就是請求權限 ajax請求上傳

其實到這里基本結束了,但是你會發現,提交的時候會產生:  No 'Access-Control-Allow-Origin' header is present on the requested resource. 跨域請求,這時需要檢查你的阿里雲服務器設置請求頭,具體參考阿里雲OSS跨域,會有設置的API


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM