



下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第Golang實(shí)現(xiàn)圖片上傳功能的示例代碼目錄1.前端代碼2.JS代碼3.后端代碼該代碼為使用beego實(shí)現(xiàn)前后端圖片上傳。話不多說,直接上代碼。
1.前端代碼
html代碼:
div背景圖(必須):/div
div
label
span/span
inputtype="file"
/label
/div
div
/div
2.JS代碼
a.讀取圖片代碼,用于在頁面上顯示
//讀取圖片
functionloadImg(){
//獲取文件
varfile=$(".up-file")[0].files[0];
//創(chuàng)建讀取文件的對象
varreader=newFileReader();
//創(chuàng)建文件讀取相關(guān)的變量
varimgFile;
//為文件讀取成功設(shè)置事件
reader.onload=function(e){
vare=window.event||e;
imgFile=e.target.result;
console.log(imgFile);
$(".img-file").css({'background':"url("+imgFile+")"});
isimg();
//正式讀取文件
reader.readAsDataURL(file);
}
b.驗(yàn)證是否有圖片存在
//是否有圖片驗(yàn)證
functionisimg(){
varimg=$(".img-file").css('background-image');
if(img.indexOf("data:image")==-1img.indexOf(".jpg")==-1){
$(".mess").html("請?zhí)砑颖尘皥D片").css("opacity",1);
returnfalse;
else{
$(".mess").css("opacity",0).html("");
returntrue;
}
c.提交上傳,將圖片以base64編碼的方式傳給后端
functionaddData(){
varurl=$(".img-file").css("background-image");
vardata1=[{"name":"url","value":url}];
$.ajax({
url:"/commmethod/method/uploadimg",
data:data1,
type:"post",
ContentType:"application/json",
success:function(resp){
......
}
3.后端代碼
func(this*CommMethodController)UploadImg(){
fileurl:=this.GetString("url")
DataArr:=strings.Split(fileurl,",")
//去除包裝,獲取到base64編碼
imgBase64:=DataArr[1][:len(DataArr[1])-2]
//base64轉(zhuǎn)碼
imgs,err:=base64.StdEncoding.DecodeString(imgBase64)
iferr!=nil{
beego.Error("base64decodeerror:",err)
timenow:=time.Now().Unix()
file,err:=os.OpenFile("./static/img/"+strconv.FormatInt(timenow,10)+".jpg",os.O_CREATE|os.O_WRONLY,0644)
iferr!=nil{
beego.Debug("createfileerror:",err)
w:=bufio.NewWriter(file)//創(chuàng)建新的Writer對象
_,err3:=w.WriteString(string(imgs))
iferr3!=nil{
beego.Error("writeerror:",err3)
w.Flush()
deferfile.Close()
imgname:=strconv.FormatInt(timenow,10)+".jpg"
t:=struct{
ImageNamestring`json:"imagename"`
}{imgname}
this.Data["json"]=t
this.ServeJSON()
*此代碼主要用于編輯圖片時(shí),刪除原有圖片
*判斷文件是否存在存在返回true不存在返回false
funccheckFileIsExist(filenamestring)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 推動(dòng)非遺保護(hù)傳承的面臨的問題、機(jī)遇與挑戰(zhàn)
- 抽水蓄能與其他儲(chǔ)能方式的協(xié)同優(yōu)勢
- 小麥白粉病抗性育種的群體遺傳學(xué)分析
- 創(chuàng)新引領(lǐng)未來之路
- 多元協(xié)同推進(jìn)學(xué)院建設(shè)風(fēng)險(xiǎn)管理評估
- 2025學(xué)校食堂廚師聘用合同
- 護(hù)理管理提升班
- 統(tǒng)計(jì)教育培訓(xùn)試題及答案
- 內(nèi)蒙古對口高考試題及答案
- 2025標(biāo)準(zhǔn)購房合同模板下載
- 紅色教育項(xiàng)目財(cái)務(wù)分析(3篇模板)
- 二手房買賣合同范本下載可打印
- 幼兒園大班語言課件:《畢業(yè)詩》
- 人教版二年級下冊口算題天天練1000道可打印帶答案
- 江蘇省南通市如皋市如城實(shí)驗(yàn)小學(xué)2023-2024學(xué)年五年級下學(xué)期期末模擬測試語文試卷
- 2021利達(dá)JB-QG-LD988EL JB-QT-LD988EL 火災(zāi)報(bào)警控制器 消防聯(lián)動(dòng)控制器調(diào)試手冊
- 山東省煙臺(tái)市萊州市2023-2024學(xué)年八年級下學(xué)期期中數(shù)學(xué)試題
- 教育資源調(diào)查報(bào)告
- 水穩(wěn)基層雙層連鋪專項(xiàng)方案
- 中國加速康復(fù)外科臨床實(shí)踐指南(2021)解讀
- 叮咚智能鎖說明書
評論
0/150
提交評論