又拍云異步上傳實(shí)例教程詳解
網(wǎng)站靜態(tài)文件存儲(chǔ)在又拍云,之前上傳是通過又拍云的的FORM API進(jìn)行。
當(dāng)產(chǎn)品經(jīng)理歪著腦袋走向你的時(shí)候,哎呀呀,這用戶信息這里,上傳要無刷新的效果了。
這他***,自己偷偷抱怨一會(huì)會(huì),怎么搞喃?聽說這家伙要一個(gè)好聽的名字,異步上傳,高大上檔次挺像我的。
根據(jù)我們的觀察,此處有兩個(gè)重點(diǎn):
①、怎么實(shí)現(xiàn)異步上傳
②、怎么上傳到又 拍 云
首先我們要實(shí)現(xiàn)異步上傳,就需要利用js里面的FormData對(duì)象,據(jù)說,這家伙不支持ie6 7的,ie8就不太清楚了,據(jù)說哈,說錯(cuò)了不負(fù)責(zé)的。
不過喃,我們也不用考慮辣么多,前段時(shí)間都聽說淘寶都要放棄ie6 7了,so 甭考慮辣么多了。ie6 7逮著ta估計(jì)都要罵ta小婊砸,竟然敢不支持我。
FormData是誰,這里就不多介紹了,可以自行百度。
我們先來看看view層怎么使用FormData這個(gè)小婊砸
<input type="file" accept="image/jpg,image/jpeg,image/png,image/gif" id="upload"> <input type="hidden" name="file">
如你所想,僅僅是一個(gè)input上傳按鈕和一個(gè)我們預(yù)留的準(zhǔn)備接收?qǐng)D片地址的隱藏input
下面來看看JS是怎么憤怒的吧
<script type="text/javascript"> function($){ //上傳 $("#upload").on("change", function () { //構(gòu)造FormData對(duì)象并賦值 var formData = new FormData(); formData.append("policy", "http://controller層傳遞過來upYun的policy配置"); formData.append("signature", "http://controller層傳遞過來upyun的signature配置"); formData.append("file", $("#upload")[0].files[0]); $.ajax({ url : "http://處理上傳的后端程序地址", type : "POST", data : formData, processData : false, contentType : false, beforeSend: function () { //可以做一些正在上傳的效果 }, success : function(data) { //data,我們這里是異步上傳到后端程序所返回的圖片地址 }, error : function(responseStr) { console.log(responseStr); } }); }); }($); </script>
到此,我們已經(jīng)實(shí)現(xiàn)了異步上傳的前端代碼,包括又拍云所需要的參數(shù)policy和signature
剩下的實(shí)現(xiàn)上傳到又拍云就簡單了,可以參考
https://github.com/upyun/php-sdk 進(jìn)行處理
相關(guān)文章
PHP cURL獲取微信公眾號(hào)access_token的實(shí)例
這篇文章主要介紹了PHP cURL獲取微信公眾號(hào)access_token的實(shí)例,需要的朋友可以參考下2018-04-04基于curl數(shù)據(jù)采集之正則處理函數(shù)get_matches的使用
本篇文章介紹了,基于curl數(shù)據(jù)采集之正則處理函數(shù)get_matches的使用。需要的朋友參考下2013-04-04IIS6.0 開啟Gzip方法及PHP Gzip函數(shù)分享
因?yàn)樵谧鲆粋€(gè)項(xiàng)目,項(xiàng)目里面服務(wù)器主要提供數(shù)據(jù),但是數(shù)據(jù)多了文件就大了,比較浪費(fèi)流量和時(shí)間,我們便用Gzip來處理。我在本機(jī)上是apache,服務(wù)器上是IIS6.0,用的是php,那么我就在這里分享一下。2014-06-06PHP 表單提交及處理表單數(shù)據(jù)詳解及實(shí)例
本文章向大家介紹表單的一些知識(shí)點(diǎn),然后介紹PHP是如何接收表單數(shù)據(jù)并如何處理表單數(shù)據(jù),文章以一個(gè)發(fā)送郵件的表單實(shí)例來向大家講解表單提交及php如何處理表單數(shù)據(jù),需要的朋友可以參考下2016-12-12