国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

springboot+vue項目中如何利用七牛云實現頭像的上傳

這篇具有很好參考價值的文章主要介紹了springboot+vue項目中如何利用七牛云實現頭像的上傳。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

做了個前后端分離的項目,對于用戶的頭像修改一直不是很滿意,

于是用了Vant4的組件庫改成了文件點擊上傳,先是打算存到本地,了解到七牛云的方便后(主要是免費),決定改成七牛云存儲圖片,記錄一下操作,方便查看復習

目錄

一、七牛云

七牛云簡介

七牛云使用

二、前端vue配置

三、后端springboot配置


一、七牛云

七牛云簡介

七牛云是國內領先的企業(yè)級公有云服務商,致力于打造以數據為核心的場景化PaaS服務。圍繞富媒體場景,七牛先后推出了對象存儲,融合CDN加速,數據通用處理,內容反垃圾服務,以及直播云服務等。

七牛云對象存儲 Kodo 是七牛云提供的高可靠、強安全、低成本、可擴展的存儲服務。您可通過控制臺、API、SDK 等方式簡單快速地接入七牛存儲服務,實現海量數據的存儲和管理。通過 Kodo 可以進行文件的上傳、下載和管理。

總的來說:七牛云是為開發(fā)服務的云存儲環(huán)境,可以在七牛云上托管靜態(tài)文件資源,并且進行下載,還有很多七牛云的sdk。
具體有關七牛云的介紹可以參考開發(fā)文檔:https://developer.qiniu.com/kodo
?

七牛云使用

首先去官網注冊??七牛云

登錄注冊就不再說了,注冊完畢之后,點擊個人中心,進行身份認證

當身份認證完成之后,點左上角創(chuàng)建存儲空間,點這個對象存儲Kodo

springboot+vue項目中如何利用七牛云實現頭像的上傳

?點擊空間管理,新建存儲空間,

讓你輸入空間名稱還有存儲區(qū)域以及訪問控制,按照要求填寫即可

springboot+vue項目中如何利用七牛云實現頭像的上傳

現在就有了一個個人倉庫了,系統(tǒng)會給我們分配一個測試域名,不過這個域名只有30天有效期,我們可以先用這個域名進行測試,后面來綁定自己的域名

點擊空間管理,進入域名管理,即可以添加綁定域名

記住域名一定要是備案域名

springboot+vue項目中如何利用七牛云實現頭像的上傳

二、前端vue配置

這里本人用的是vant4組件

<template>
 <van-uploader v-model="fileList"  :before-read="beforeRead" :after-read="afterRead"/>
</template>

<script setup lang="ts">
const fileList = ref([
  {url: editUser.value.currentValue, isImage: true},
  // Uploader 根據文件后綴來判斷是否為圖片文件
  // 如果圖片 URL 中不包含類型信息,可以添加 isImage 標記來聲明

]);
console.log(fileList)
const beforeRead = (file: any) => {
  console.log(file+'jpg')
  if (file.type !== 'image/jpeg') {
    Toast('請上傳 jpg 格式圖片');
    return false;
  }
  return true;
};

const afterRead = (file: any) => {
  // 返回圖片信息
  console.log(file);
  const ImgUploadFile = async (params: any) => {
    // 要把數據變成file格式
    const formData = new FormData(); // 下面有備注
    formData.append('file', params);
    console.log(formData)
    return await myAxios.post('/upload/img', formData, {
      headers: {
        // 注意修改請求頭file格式
        'Content-Type': 'multipart/form-data',
      },
    });
  };
  ImgUploadFile(file.file)
  editUser.value.currentValue =  "你自己的域名/"+ file.file.name;
}
</script>

三、后端springboot配置

.在pom.xml添加七牛云依賴

        <!--七牛云上傳-->
        <dependency>
            <groupId>com.qiniu</groupId>
            <artifactId>qiniu-java-sdk</artifactId>
            <version>7.2.11</version>
        </dependency>
        <!-- 七牛云依賴Gson -->
        <dependency>
            <groupId>com.google.code.gson</groupId>
            <artifactId>gson</artifactId>
            <version>2.8.6</version>
        </dependency>

controller層

@Controller
@RequestMapping("upload")
public class uploadimg {
    @PostMapping("/img")
    @ResponseBody
    public void up1img(@RequestParam(value = "file", required = false) MultipartFile file) throws IOException {
        if (file.isEmpty()) {
            return;
        }
        String fileName = file.getOriginalFilename();
        InputStream inputStream = file.getInputStream();
        QiniuOssUtils utils = new QiniuOssUtils();
        String upload = utils.upload(inputStream, fileName);
        System.out.println(upload);
    }
}

工具類方法,記得換成你自己的AK和CK以及域名

七牛云的配置信息都可以在個人中心拿到,其中AK和SK:點擊密鑰管理

import com.google.gson.Gson;
import com.qiniu.common.QiniuException;
import com.qiniu.common.Zone;
import com.qiniu.http.Response;
import com.qiniu.storage.BucketManager;
import com.qiniu.storage.Configuration;
import com.qiniu.storage.UploadManager;
import com.qiniu.storage.model.DefaultPutRet;
import com.qiniu.util.Auth;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.InputStream;

/**
 * 七牛OSS管理工具
 */
public class QiniuOssUtils {

    /**
     * 存儲空間名
     */
    private static final String BUCKET = "空間名";
    /**
     * accessKey和secretKey
     */
    private static final String ACCESS_KEY = "AK";
    private static final String SECRET_KEY = "CK";
    /**
     * 外網訪問地址(內置域名有效期只有30天)
     */
    private static final String BASE_URL = "域名+/";

    /**
     * 上傳管理器
     */
    private UploadManager upload;
    /**
     * 桶管理器(存儲空間管理器)
     */
    private BucketManager bucket;

    public QiniuOssUtils() {
        //創(chuàng)建配置對象
        Configuration cfg = new Configuration(Zone.zone2());
        //創(chuàng)建上傳管理器
        upload = new UploadManager(cfg);
        //創(chuàng)建存儲空間管理器
        bucket = new BucketManager(getAuth(), cfg);
    }

    /**
     * 返回認證器(包含的訪問密鑰)
     *
     * @return
     */
    private Auth getAuth() {
        return Auth.create(ACCESS_KEY, SECRET_KEY);
    }

    /**
     * 獲取令牌對象(服務器返回的授權信息)
     *
     * @return
     */
    private String getToken() {
        return getAuth().uploadToken(BUCKET);
    }

    /**
     * 文件上傳
     *
     * @param file
     * @return
     */
    public String upload(File file, String key) {
        try {
            return upload(new FileInputStream(file), key);
        } catch (FileNotFoundException | QiniuException e) {
            e.printStackTrace();
        }
        return null;
    }

    /**
     * 上傳文件
     *
     * @param is
     * @param key
     * @return
     * @throws QiniuException
     */
    public String upload(InputStream is, String key) throws QiniuException {
        //上傳流
        Response response = upload.put(is, key, getToken(), null, null);
        //解析返回結果
        DefaultPutRet putRet = new Gson().fromJson(response.bodyString(), DefaultPutRet.class);
        //將文件的訪問地址返回
        return BASE_URL + putRet.key;
    }

    /**
     * 刪除文件
     *
     * @param key
     */
    public void delete(String key) {
        try {
            bucket.delete(BUCKET, key);
        } catch (QiniuException e) {
            e.printStackTrace();
        }
    }
}

查看的話,可以在代碼中修改,將圖片路徑存儲到數據庫中,

查看時到數據庫中將路徑查詢出來,返給前端,前端拿到鏈接訪問即可。

最終效果是這樣

springboot+vue項目中如何利用七牛云實現頭像的上傳

springboot+vue項目中如何利用七牛云實現頭像的上傳

?我們也可以來看一下七牛云后臺管理的圖片信息

springboot+vue項目中如何利用七牛云實現頭像的上傳

?感謝你能看完,如果對你有幫助的話,點個贊支持下文章來源地址http://www.zghlxwxcb.cn/news/detail-510318.html

到了這里,關于springboot+vue項目中如何利用七牛云實現頭像的上傳的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • vue+element ui上傳圖片到七牛云服務器

    vue+element ui上傳圖片到七牛云服務器

    本來打算做一個全部都是前端完成的資源上傳到七牛云的demo,但是需要獲取token,經歷了九九八十一難,最終還是選擇放棄,token從后端獲?。╯pringboot)。如果你們有前端直接能解決的麻煩記得私我哦?。。?效果展示 先看看文檔: element ui :https://element.eleme.cn/#/zh-CN/compone

    2024年04月13日
    瀏覽(17)
  • 七牛云如何配置免費 https 阿里云SSL證書

    七牛云如何配置免費 https 阿里云SSL證書

    七牛云注冊鏈接:https://s.qiniu.com/yaQ3am 我之前有個項目是走的 https,這個項目作了一些印刷品,二維碼的內容就是 https 的,后來為了適配七牛云的圖片服務,就改成了 http。導致再掃二維碼的時候都會提示不安全。 以 https 地址進入網站,網站卻服務在 http 的時候,證書不匹

    2024年02月07日
    瀏覽(89)
  • 【手把手教學】利用七牛云免費CDN服務為自己網站啟用圖片CDN加速 - 免費版10G/月

    【手把手教學】利用七牛云免費CDN服務為自己網站啟用圖片CDN加速 - 免費版10G/月

    A) 我的網站原圖:? ? ? ?http://assets.xxx.com/ assets/img/banner.jpg B) 七牛CDN圖片外鏈:http://cdn.xxx.com/ assets/img/banner.jpg ( 其中B指向七牛的個人存儲空間的同路徑文件C,如果C不存在或過期,七牛就會自動向A取圖 ) 七牛的CDN與傳統(tǒng)的CDN思路一樣,例如免費的cloudflare、收費的Amazo

    2024年02月02日
    瀏覽(55)
  • Gin+微服務實現抖音視頻上傳到七牛云

    Gin+微服務實現抖音視頻上傳到七牛云

    如果你對Gin和微服務有一定了解,看本文較容易。 執(zhí)行命令: Go SDK 的所有的功能,都需要合法的授權。授權憑證的簽算需要七牛賬號下的一對有效的 Access Key 和 Secret Key ,這對密鑰可以通過如下步驟獲得: 點擊注冊??開通七牛開發(fā)者帳號 如果已有賬號,直接登錄七牛開發(fā)

    2024年02月12日
    瀏覽(24)
  • SpringBoot集成阿里云OSS、華為云OBS、七牛云、又拍云等上傳案例【附白嫖方案】【附源碼】

    SpringBoot集成阿里云OSS、華為云OBS、七牛云、又拍云等上傳案例【附白嫖方案】【附源碼】

    唉!本文寫起來都是淚點。不是刻意寫的本文,主要是對日常用到的文件上傳做了一個匯總總結,同時希望可以給用到的小伙伴帶來一點幫助吧。 上傳本地,這個就不水了,基本做技術的都用到過吧; 阿里云OSS,阿里云是業(yè)界巨鱷了吧,用到的人肯定不少吧,不過博主好久

    2024年02月22日
    瀏覽(21)
  • 使用(七牛云)為例子實現將文件上傳到云服務器

    使用(七牛云)為例子實現將文件上傳到云服務器

    目前,用戶的頭像、分享生成的長圖等文件都是存放在本地的,我們可以將他們存放在云服務器中,此處我們使用七牛云作為例子示范。 創(chuàng)建賬戶并申請如下的兩個bucket,分別是用戶頭像的存儲空間和分享長圖的存儲空間。 相應的js文件: 文件已經存入七牛云

    2024年02月10日
    瀏覽(27)
  • vue2+wangEditor5富文本編輯器(圖片視頻自定義上傳七牛云/服務器)

    vue2+wangEditor5富文本編輯器(圖片視頻自定義上傳七牛云/服務器)

    1、安裝使用 安裝 在main.js中引入樣式 在使用編輯器的頁面引入js 模板 js ?到這一步編輯器就可以正常顯示了 2、上傳圖片、視頻 上傳到后臺接口的可直接按照文檔這個配置就行接口返回格式也要可文檔上一致 ? ?2)自定義上傳(一般上傳到別的服務器上,我這邊是上傳到七

    2024年02月11日
    瀏覽(105)
  • 七牛云 圖片存儲

    七牛云 圖片存儲

    在項目中,如用戶頭像、文章圖片等數據往往需要使用單獨的文件存儲系統(tǒng)來保存 企業(yè)中常見的存儲方案有兩種: a.搭建分布式存儲系統(tǒng), 如FastDFS 數據量非常大, 具備相應的運維管理人員 b.第三方存儲 運維成本低, 安全可靠 七牛云作為老牌云存儲服務商, 提供了優(yōu)質的第三方

    2024年02月16日
    瀏覽(21)
  • uniapp 集成七牛云,上傳圖片

    uniapp 集成七牛云,上傳圖片

    4 相冊選擇照片,或者拍照后,使用上傳代碼

    2024年02月17日
    瀏覽(18)
  • 七牛云部署文件管理服務器

    七牛云部署文件管理服務器

    1.1 介紹 在實際開發(fā)中,我們會有很多處理不同功能的服務器。例如: 應用服務器:負責部署我們的應用 數據庫服務器:運行我們的數據庫 文件服務器:負責存儲用戶上傳文件的服務器 分服務器處理的目的是讓服務器各司其職,從而提高我們項目的運行效率。 常見的圖片存

    2024年01月23日
    瀏覽(26)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包