1. 程式人生 > >使用七牛雲端儲存圖片案例

使用七牛雲端儲存圖片案例

使用步驟:

1. 準備工作
註冊後進行實名認證,通過後可以獲得AccessKey以及SecretKey,主要是後面呼叫介面的時候需要使用。

2.建立儲存空間
點選”管理控制檯”——> “物件儲存”——>”新建儲存空間”,並且填入對應的資訊。

如果你希望使用者在任何情況下都可以直接訪問資源,可以直接將空間設為公開。

3.在專案中引入七牛雲提供的JAVA-SDK
注意:此 SDK 適用於 Java 7 及以上版本

使用maven的方式引入:

<dependency>
  <groupId>com.qiniu</groupId>
  <artifactId>qiniu-java-sdk</artifactId>
  <version>[7.2.0, 7.2.99]</version>
</dependency>

這裡的version指定了一個版本範圍,每次更新pom.xml的時候會嘗試去下載7.2.x版本中的最新版本,不過你也可以手動指定一個固定的版本。

4.使用SDK提供的圖片上傳工具
七牛檔案上傳分為客戶端上傳(主要是指網頁端和移動端等面向終端使用者的場景)和服務端上傳兩種場景,具體可以參考官方文件 ,文中使用的是服務端上傳的方式。

結合SpringMVC來上傳圖片到七牛雲:

/**
 * 檔案上傳工具
 */
public class UploadUtil {

    /**
     * 上傳到七牛雲
     * @param file 上傳的圖片
     * @return 七牛雲中圖片的名字
     */
    public static String uploadQiniu(MultipartFile file) {
        //構造一個帶指定Zone物件的配置類
        Configuration cfg = new Configuration(Zone.zone2());
        //...其他引數參考類註釋
        UploadManager uploadManager = new UploadManager(cfg);
        //...生成上傳憑證,然後準備上傳
        String accessKey = "你的accessKey";
        String secretKey = "你的secretKey";
        //儲存空間的名字
        String bucket = "wolfcode";
        //預設不指定key的情況下,以檔案內容的hash值作為檔名
        String key = null;
        Auth auth = Auth.create(accessKey, secretKey);
        String upToken = auth.uploadToken(bucket);
        try {
            Response response = uploadManager.put(file.getBytes(), key, upToken);
            //解析上傳成功的結果
            DefaultPutRet putRet = new Gson().fromJson(response.bodyString(), DefaultPutRet.class);
            return putRet.key;
        } catch (QiniuException ex) {
            Response r = ex.response;
            System.err.println(r.toString());
            try {
                System.err.println(r.bodyString());
            } catch (QiniuException ex2) {
                //ignore
            }
        } catch (Exception ex) {
            ex.printStackTrace();
        }
        return null;
    }
}

備註:
1 七牛儲存支援空間建立在不同的機房,Zone物件是指定具體哪個機房

2 預設不指定key的情況下,以檔案內容的hash值作為檔名,使用hash的好處還可以去除重複圖片,重複上傳同一張圖片,在七牛雲中只會佔用一個圖片的空間。

3 上傳成功後的返回的DefaultPutRet物件,裡面包含圖片的hash值,和圖片的key值其實就是檔名。

最後一步,就是訪問圖片了,開啟物件儲存空間,可以看到七牛雲分配的外鏈域名,以及上傳過的圖片,把域名和圖片的key值拼接在一起,就是圖片的URL了,如:http://pgd3zoxnk.bkt.clouddn.com/FgaeuBs1QwDZUd9UO4betMtgZOMs

相關推薦

使用雲端儲存圖片案例

使用步驟: 1. 準備工作 註冊後進行實名認證,通過後可以獲得AccessKey以及SecretKey,主要是後面呼叫介面的時候需要使用。 2.建立儲存空間 點選”管理控制檯”——> “物件儲存”——>”新建儲存空間”,並且填入對應的資訊。 如果你希望使用者在任何情況下都可以直

spring boot 、springMVC環境整合百度ueditor富文字編輯器,使用雲端儲存圖片

基於spring boot的專案中要用到富文字編輯器,但百度UEditor的後臺程式碼給出的是jsp版本的實現,由於專案使用的thymeleaf,不願為了一個外掛單獨新增jsp支援;且專案中又使用七牛儲存圖片等檔案,便重寫UEditor的後臺程式碼。 原料

springboot(7)——上傳圖片/檔案到雲端儲存

一、七牛雲快速入門 快速入門 1、註冊賬號 2、建立儲存空間, 命名xyz對應下面springboot 應用配置bucket 3、建立成功後進入該空間,獲取該空間的測試域名,對應下面springboot 應用配置中的path 4、點選“個人面板—金鑰管理

laravel5中使用雲端儲存、上傳圖片

安裝 composer require itbdw/laravel-storage-qiniuconfig/app.php 裡面的 providers 加上一行  itbdw\QiniuStorage\QiniuFilesystemServiceProvider::cl

Spring 使用雲端儲存上傳圖片以及html5圖片壓縮上傳

需求: 最近在做專案的時候採用了多模組的方案 前臺是一個系統 後臺是另一個系統 在做圖片上傳的時候有個問題 如果想之前那樣前臺系統的圖片儲存的自己的web應用目錄下 後臺系統是沒法訪問的 (直接寫死路徑不太好) 這裡我想到了兩個方案 方案一:自己搭建

使用雲端儲存markdown用的圖片

概述 使用md寫文章的人,喜歡他的方便性,可移植性,寫一個文字就包括了文章及排版。不過圖片連結卻不是那麼方便,每個部落格站點都有一些自己的圖片上傳方式。你想把這篇文章再copy到其他站點,由於源站點會設定圖片的防盜鏈,新的站點上的文章就看不到圖片了。為了解決這

雲端儲存java上傳圖片

1、註冊七牛雲端儲存賬號 2、新增物件儲存 3、新建java或javaWeb專案 匯入七牛雲端儲存需要jar包 gson okhttp okio qiniu-java-sdk-7.1.3.jar 4、檔案上傳程式碼 package main; imp

上傳base64圖片雲端儲存

簡單的說一下需求:將canvas繪畫生成的圖片上傳至七牛。 用canvas生成的圖片是base64編碼,上傳base64編碼圖片到七牛雲公開的介面如下: POST /putb64/<Fsize>/key/<EncodedKey>/

雲端儲存圖片的上傳【PHP】

由於七牛雲端儲存使用了名稱空間USE,名稱空間是在PHP5.3才引入的,所以5.3之前的版本會報錯的哦 第一、下載七牛雲端儲存SDK對應的PHP版本 第二、解壓檔案(我重新命名為了qiniusdk),放到專案根目錄 第三、確定上傳檔案的機制(HTML上傳,後臺上傳) 第四、

物件儲存服務OSS使用案例之騰訊COS、雲端儲存、阿里OSS

專案目錄結構: ossdemo-aliyunoss:阿里OSS使用案例(尚未完成) ossdemo-qcloudcos :騰訊雲COS使用案例 ossdemo-qiniu :七牛雲端儲存使用案例 pom.xml 騰訊雲COS 2

Java開發雲端儲存 ,上傳視訊與圖片檔案 , 頁面播放器GrindPlayer.swf

七牛的雲端儲存還是比較強大的 , 可以上傳檔案(什麼格式都可以) , 而且還可以對上傳的檔案進行轉碼等操作. 我在專案中用到的也只是很小的一部分. 七牛上傳檔案需要四個引數: 一.註冊完賬號以後會生成兩個密匙 AccessKey , Secr

雲端儲存 qiniu 測試域名被回收 檔案備份 批量下載

Markdown版本筆記 我的GitHub首頁 我的部落格 我的微信 我的郵箱 MyAndroidBlogs baiqiantao bai

雲端儲存客戶端(本人開發,開源)

直接不廢話,開源地址:https://github.com/wjs5943283/QiNiuBucketClientQiNiu bucket Client 簡單的七牛儲存客戶端,增加了批量下載功能, 使用wpf 基於 .net framework 4.0 下載Dubug.zip直接使用,填寫AK和S

OneinStack定時同步備份資料庫/網站至雲端儲存方法

第一、準備工作 1、建立七牛雲端儲存空間 我們需要有七牛雲賬戶且建立一個私有云儲存空間。 2、獲取七牛金鑰 我們需要獲取七牛雲端儲存賬戶的AccessKey/SecretKey,因為等會需要對接使用。 3、升級最新版本 ./upgrade.sh oneinstack 我們需要升級至最

VPS伺服器備份網站到雲端儲存的shell指令碼(第二版)

上一篇文章釋出了備份網站到七牛的第一版,這次應回覆要求先公佈同步原理及 shell 原始碼,讓喜歡折騰的人有力可使。其實,這個備份工具的原理非常簡單,就是借用了官方的同步工具,配合簡單的 shell 語句即可完成。 一、備份原理 簡介 qrsync 是一個根據七牛雲端儲存 API 實現的簡易命令

[幫宣]雲端儲存加盟DNSPod創業D計劃 共助創業夢想起航

本文是幫七牛的朋友轉發,跟本部落格無關,裡面傲嬌的文字請各位包涵。5月20日,在這個充滿愛的日子裡,錘子舉辦釋出會,酷派締造大神節。智慧手機的普及正逐漸成為移動網際網路爆發增長推手,這是最好的時代,也是最壞的時代。隨著移動網際網路的快速發展,創業的成本正在逐漸降低,這為創業者帶來新的機遇,但如何能在複雜多變的

雲端儲存Demo徵集大賽正式啟動,Google Glass等你來拿!

七牛雲端儲存專注於為開發者提供一站式的資料託管服務。在與廣大開發者接觸的過程中,我們發現,越來越多的人正在基於七牛打造產品。2014年,七牛決定發起一場Demo徵集大賽,旨在發掘與激勵有潛力的開發者和創業團隊。本次大賽以“極客 創造 享受”為主題,由七牛雲端儲存主辦,GitCafe和新浪雲端計算SAE協辦。在

雲端儲存上傳自有證書開啟https訪問

 雖然七牛雲端儲存也提供免費SSL證書申請,但在我們都在阿里雲申請了免費SSL證書,正準備在七牛上傳,彈出的介面卻讓我傻了眼,如下圖所示:          阿里雲免費SSL證書提供了不同伺服器環境的版本,有Apache、Nginx

[2015.09.22]雲端儲存服務故障,業務中斷83分鐘

以下為七牛給客戶發出來的故障說明郵件: 尊敬的使用者,您好! 2015.9.22早上10點02分,由於七牛的華東節點供應商機房違規操作,使得同城雙機房同時出現網路訪問故障,導致我們現有的高可用多機房互備熱備方案失效,使得大量七牛使用者受到影響,我們表示萬分的歉意。特此給出詳細的情況說明,整改措施以及

將WordPress部署到雲端儲存實現CDN加速

首先我們需要了解什麼是 CDN 加速,CDN 加速簡單的來說,就是把原伺服器上資料複製到其他伺服器上,使用者訪問時,那臺伺服器近訪問到的就是那臺伺服器上的資料。CDN 加速優點是成本低,速度快。適合訪問量比較大的網站。而且,如果你的部落格所在的主機是限制流量的,一個很好