1. 程式人生 > >vue+node+axios實現圖片上傳

vue+node+axios實現圖片上傳

用vue做前端,用axios上傳圖片,用node做後臺接收資料

前端部分


上傳圖片用的是formData方法上傳,用axios上傳需要注意的地方:

<script>

import axios from 'axios'

methods:{

getImg(){

//用axios()方法

//需要注意的是在ajax中使用formdata需要配置anync:true,contentType:false,processData:false,在axios中不配置                 //也能上傳

                //還有一個地方需要注意的是formData.append(name,value),裡面的name對應的是input 的name值,value對應

//的是input的files[0],不是input.val(),對於的type=file的input,圖片是在input的FileList 裡面,

//這裡用的是this.$refs.upload.files[0],這是因為在vue中使用this.$refs.refname來獲取dom的真實節點,用jq或者

//js的獲取節點的方法是拿不到的,

var formData = new FormData();

formData.append('file',this.$refs.upload.files[0]);

axios({

method:'post',

url:'http://localhost:3000/users/touxiang',

anync:true,
contentType:false,
processData:false,

data:formData

}).then(function(res){

console.log(res)

})

}

}

//用axios.post方法傳圖片,需要注意的

//直接將params作為引數傳到post方法內

//regis就是已經封裝好的post方法

var params = new FormData();
params.append('file',this.$refs.upload.files[0]);
userApi.regis(params).then(function(res){
console.log(res)
})

</script>

//後臺接收需要注意

//node中接收圖片一定要用multer,否則無法接收到圖片

//用multer接收圖片後的處理方法仍然是修改名稱和路徑,將路徑儲存到資料庫,然後返回路徑給前臺


相關推薦

vue+node+axios實現圖片

用vue做前端,用axios上傳圖片,用node做後臺接收資料 前端部分 上傳圖片用的是formData方法上傳,用axios上傳需要注意的地方: <script> import axios from 'axios' methods:{ getImg(){ /

vue+node+axios實現檔案

百度了很多東西,有點繞,不廢話,直接上程式碼 html部分程式碼: <div id="app"> <input type="file" name="file" @c

vue + qiniu(七牛) + axios 實現圖片

上傳頭像功能,可以使用原生的ajax,現在有了axios封裝好的ajax,通過formData的方式。 上傳七牛的圖片,前提是要先從後臺獲取的一個token的,上傳圖片時候作為引數傳給七牛。 自己對應

node.js實現圖片(包含縮略圖)

http close path return new tde log img thumb 圖片上傳 使用multiparty插件實現上傳 安裝multiparty npm i --save multiparty 代碼實現 const multiparty = requi

vue實現圖片

專案中用到的是上傳頭像,前端通過input[type="file"]來選擇圖片,給後端傳遞一個formData格式的資料,然後上傳。程式碼如下: 我寫了個元件,引數如下: uploadType: 上傳型別 width: 圖片顯示的寬度 height: 圖片顯示的高度 imgUrl: 如果之前有圖片,

vue】移動端通過cube-ui實現圖片

「Pre」cube-ui的安裝 POST:https://blog.csdn.net/dangbai01_/article/details/84935882    一、普通上傳   <cube-upload  &nb

CKEditor實現圖片,並且回調圖片路徑

js文件 文件上傳 hid class mode 兩種方法 review 重名 action CKEditor編輯器的工具欄中初始的時候應該是這樣子的,沒有圖片上傳按鈕 並且預覽中有一堆火星文,可以修改相應配置刪除它。 第一種方法:打開ckeditor/plugins/im

微信端調取相冊和攝像頭,實現圖片,並到本地服務器

配置 epic 替換 pan source 工具 alert 調試 family 在微信公眾號網頁開發時,遇到了圖片上傳的問題,查看了微信的開發者文檔,裏面的資料比較全。接著我們看一下整個的流程 1、config權限配置 $.ajax({ url:‘wx_getC

HTML5+Canvas+jQuery調用手機拍照功能實現圖片(二)

customer mkdir 狀態保存 ont false lan else if 項目 action 上一篇僅僅講到前臺操作,這篇專門涉及到Java後臺處理。前臺通過Ajax提交將Base64編碼過的圖片數據信息傳到Java後臺,然後Java這邊進行接收處理。通過

一個完整的springmvc + ajaxfileupload實現圖片的案例

multipart per cnblogs not his let facade func connector 一,原理 詳細原理請看這篇文章 springmvc + ajaxfileupload解決ajax不能異步上傳圖片的問題。java.lang.ClassCastEx

formData實現圖片

call 目錄 encode 之前 html 上傳圖片 tar ade keep 前言   在 上一篇 已經實現了圖片預覽,那麽如何上傳圖片呢?有兩種思路:   1、將圖片轉化為dataURL(base64),這樣就成為了一串字符串,再傳到服務端。不過這樣缺點很多,數據量比

js實現圖片實時顯示

input res window splay ack 顯示 style rip 是否 在開發的時候經常遇到這樣的需求,用戶在上傳圖片的時候,想要看到自己上傳的圖片是否正確,這時候需要把用戶上傳的圖片及時顯示出來,然後等他點擊上傳的時候,程序再執行上傳到服務器。 <!

django實現圖片和顯示

代碼 ngs 文件路徑 ont 添加 pac pre bubuko contex 首先安裝pillow模塊 在models.py下設置 class Notices(models.Model): NoticeCategory=models.CharField(max_

JQuery實現 圖片

elf ref log ava cti jquer dde ttr onchange 用到的文件,我都已經打包好了,自行下載: https://files.cnblogs.com/files/lguow/lib.rar 核心代碼如下: <input type="hi

接口自動化實現圖片(selenium/RF)

herf ict 上傳圖片 帶圖片 amp 怎麽 top .get imp 最近做自動化碰到一個問題: 就是帶圖片上傳的不知道怎麽實現自動化:整理了下實現如下: 上傳圖片postman 結果請求如下,上傳圖片後返回一個圖片地址: post請求 body 是form-da

tp5實現圖片

html部分 <form action="{:url('upload')}" method="post" enctype="multipart/form-data"> <div class="layui-form-item"> <label

SpringMvc實現圖片

首先是設定一下tomcat的虛擬路徑,有兩種方法(以在C:/upfile/為例) 第一種是在tomcat的bin目錄下的server.xml新增一句 < Context docBase=“C:/upfile/” path="/upload" reloada

elementUI+koa實現圖片功能

elementUI中的上傳元件為: 大家可以先在自己的專案中執行一下餓了麼上傳元件 <el-upload action="https://jsonplaceholder.typicode.com/posts/" list-type="picture-card" :o

javascript實現圖片實時顯示圖片

我們平時會用到圖片上傳要求上傳的圖片要實時顯示,那麼下面就是我的方法 HTML程式碼如下 <input type="file" name="file" onchange="showImg(this)" /> <img id=

html5實現圖片預覽

<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <style type="text/css"> #te