七牛云模塊化文檔

前言

閑來無事,搭建了個人私倉來放模塊化項(xiàng)目涩拙,以便項(xiàng)目引入直接使用。關(guān)鍵是婆誓,模塊化可以根據(jù)項(xiàng)目所需進(jìn)行版本迭代吃环,每一次的使用都是完善的根基也颤,效果賊棒洋幻。

介紹

七牛云是國內(nèi)領(lǐng)先的企業(yè)級公有云服務(wù)商,致力于打造以數(shù)據(jù)為核心的場景化PaaS服務(wù)翅娶。圍繞富媒體場景文留,七牛先后推出了對象存儲,融合CDN加速竭沫,數(shù)據(jù)通用處理燥翅,內(nèi)容反垃圾服務(wù),以及直播云服務(wù)等蜕提。

而此次推出的模塊化森书,目的是為了滿足項(xiàng)目存儲圖片的需求,才有了此番封模塊化的構(gòu)思谎势。

話不多說...進(jìn)入主題吧凛膏!

模塊化說明文檔

一、上傳交互方式(兩種)

  • 前端上傳(推薦方式)

客戶端在上傳資源到七牛云前脏榆,要先從業(yè)務(wù)服務(wù)器獲取一個有效的上傳憑證Token猖毫,即請求相應(yīng)項(xiàng)目的七牛云接口拿到Token,
接著使用Token調(diào)用前端上傳七牛云的api须喂,上傳文件至七牛云吁断,返回?cái)?shù)據(jù)(得到圖片URl趁蕊,即可傳給后臺存儲)。

PS:如果有設(shè)置回調(diào)仔役,則上傳完成時七牛云存儲會自動發(fā)起回調(diào)到指定的業(yè)務(wù)服務(wù)器掷伙。

  • 后臺上傳

單圖上傳 & 多圖上傳

老規(guī)矩,后臺項(xiàng)目會依賴七牛云模塊又兵,前端需請求相應(yīng)后臺接口炎咖,參數(shù)傳File文件(當(dāng)多圖片時為數(shù)組),后臺將會直接上傳文件至七牛云寒波,并存儲至數(shù)據(jù)庫乘盼。

二、配置需知

  • 一般不變配置:accessKey俄烁,secretKey

  • 可變配置:bucket绸栅,key,expires页屠,policy粹胯,strict

三、返回token情況分析

1.提供空間名bucket辰企,其余默認(rèn)
String getToken(String bucket)
2. 提供空間名bucket风纠,上傳指定key,其余默認(rèn)
String getToken(String bucket, String key)
3. 提供空間名bucket牢贸,上傳指定key竹观,有效時長expires,上傳策略policy(詳見官方SDK上傳策略
String getToken(String bucket, String key, long expires, StringMap policy)
4. 提供空間名bucket潜索,上傳指定key臭增,有效時長expires,上傳策略policy竹习,是否去除非限定的策略字段strict
String getToken(String bucket, String key, long expires, StringMap policy, boolean strict)

注:
后期將會迭代部分
七牛模塊化會添加多種動態(tài)配置參數(shù)獲取token誊抛,因此,暫時是默認(rèn)參數(shù)獲取token整陌,不過拗窃,足夠使用了。

模塊化使用文檔

Maven依賴七牛云

pom.xml

<dependency>
    <artifactId>qiniu</artifactId>
    <groupId>com.yuan.module</groupId>
    <version>1.0.0</version>
</dependency>

注:隨著七牛模塊的迭代泌辫,version會不同随夸,但我會實(shí)時更新文檔,并注上各版本的迭代內(nèi)容~~~

配置文件

application.yml

覆蓋accessKey甥郑,secretKey逃魄,linkAddress,bucket澜搅。

按如下配置格式配置伍俘,填充相關(guān)信息即可邪锌。

joryun:
  module:
    qiniu:
      bucket: xxx
      access-key: xxx
      secret-key: xxx
      link-address: xxx

注意

  • linkAddress為默認(rèn)外鏈域名,項(xiàng)目需要配置癌瘾,否則無法訪問觅丰。(不同的bucket對應(yīng)的外鏈也不同)
  • 務(wù)必要覆蓋如上配置,否則上傳的圖片資源妨退,將會存在博主的七牛云上
  • 坑點(diǎn):bucket的創(chuàng)建需注意妇萄,可能會存在區(qū)域的問題,一般廣東用戶可選擇創(chuàng)建“華南”地區(qū)
  • 溫馨提示:以上配置中咬荷,joryun 是博主的英文名冠句,最好是copy到項(xiàng)目,免得拼錯

API(接口調(diào)用)

前端上傳(推薦方式)

  • 返回Token給前端
http://server_name:port/api/module/qiniu/token
  • 調(diào)用前端與七牛交互的API幸乒,帶著Token憑證上傳

后端上傳(推薦方式)

  • 單圖上傳
http://server_name:port/api/module/qiniu/one

Param:MultipartFile file (單個file)

  • 多圖上傳
http://server_name:port/api/module/qiniu/many

Param:MultipartFile[] files (file數(shù)組)

  • 后端文件上傳懦底,流方式
http://server_name:port/api/module/qiniu/stream
  • 后端文件上傳,字節(jié)方式
http://server_name:port/api/module/qiniu/byte

拓展小知識

說明:
項(xiàng)目中有引用 swagger 依賴的罕扎,在前后端分離的架構(gòu)里聚唐,可能在七牛模塊化的使用成本上比較高。問題在于腔召,后臺引入了模塊化杆查,但swagger文檔里并無出現(xiàn)此接口,那就會加大時間上的溝通成本以及使用成本臀蛛,實(shí)為不利亲桦。

小技巧:
博主的七牛模塊化已引入了 swagger 依賴,為了減少前后端開發(fā)人員使用成本掺栅,可進(jìn)行如下配置烙肺,即可在 swagger 文檔看到此接口纳猪。

@Bean
    public Docket swaggerSpringMvcPlugin() {
        Parameter parameter = new ParameterBuilder()
                .name("Authorization")
                .description("token")
                .modelRef(new ModelRef("string"))
                .parameterType("header")
                .required(false)
                .defaultValue("token ")
                .build();
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo())
                .globalOperationParameters(Collections.singletonList(parameter))
                .select()
                .apis(withClassAnnotation(Api.class))
                .paths(paths())
                .build();
    }

主要是這一句配置:

.apis(withClassAnnotation(Api.class))

解析:

每個Controller都會加上如下注解氧卧,因此可由傳統(tǒng)的包掃描更改為注解掃描,于是便出現(xiàn)了七牛模塊化的接口文檔氏堤!

@Api(tags = "xxx")

總結(jié)

個人的項(xiàng)目里沙绝,七牛模塊化已基本足夠使用了。
按上面提供的使用文檔引入模塊化鼠锈,可以很方便地存儲圖片(為什么一直說存儲圖片呢...因?yàn)樽隽撕枚囗?xiàng)目闪檬,大多是存儲圖片需要)。
好了购笆,功能完善的項(xiàng)目并非一日功夫粗悯,需要時間一步步完善,但模塊化絕對是很好的一個idea同欠,甚至是思維样傍。閑著沒事做横缔,封些模塊化使用,可以一點(diǎn)點(diǎn)抽離項(xiàng)目服務(wù)衫哥,其實(shí)挺類似 服務(wù)提供者 暴露服務(wù)的茎刚。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市撤逢,隨后出現(xiàn)的幾起案子膛锭,更是在濱河造成了極大的恐慌,老刑警劉巖蚊荣,帶你破解...
    沈念sama閱讀 219,188評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件初狰,死亡現(xiàn)場離奇詭異,居然都是意外死亡互例,警方通過查閱死者的電腦和手機(jī)跷究,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,464評論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來敲霍,“玉大人俊马,你說我怎么就攤上這事〖玷荆” “怎么了柴我?”我有些...
    開封第一講書人閱讀 165,562評論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長扩然。 經(jīng)常有香客問我艘儒,道長,這世上最難降的妖魔是什么夫偶? 我笑而不...
    開封第一講書人閱讀 58,893評論 1 295
  • 正文 為了忘掉前任界睁,我火速辦了婚禮,結(jié)果婚禮上兵拢,老公的妹妹穿的比我還像新娘翻斟。我一直安慰自己,他們只是感情好说铃,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,917評論 6 392
  • 文/花漫 我一把揭開白布访惜。 她就那樣靜靜地躺著,像睡著了一般腻扇。 火紅的嫁衣襯著肌膚如雪债热。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,708評論 1 305
  • 那天幼苛,我揣著相機(jī)與錄音窒篱,去河邊找鬼。 笑死,一個胖子當(dāng)著我的面吹牛墙杯,可吹牛的內(nèi)容都是我干的济锄。 我是一名探鬼主播,決...
    沈念sama閱讀 40,430評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼霍转,長吁一口氣:“原來是場噩夢啊……” “哼荐绝!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起避消,我...
    開封第一講書人閱讀 39,342評論 0 276
  • 序言:老撾萬榮一對情侶失蹤低滩,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后岩喷,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體恕沫,經(jīng)...
    沈念sama閱讀 45,801評論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,976評論 3 337
  • 正文 我和宋清朗相戀三年纱意,在試婚紗的時候發(fā)現(xiàn)自己被綠了婶溯。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,115評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡偷霉,死狀恐怖迄委,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情类少,我是刑警寧澤叙身,帶...
    沈念sama閱讀 35,804評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站硫狞,受9級特大地震影響信轿,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜残吩,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,458評論 3 331
  • 文/蒙蒙 一财忽、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧泣侮,春花似錦即彪、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,008評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至酬凳,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間遭庶,已是汗流浹背宁仔。 一陣腳步聲響...
    開封第一講書人閱讀 33,135評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留峦睡,地道東北人翎苫。 一個月前我還...
    沈念sama閱讀 48,365評論 3 373
  • 正文 我出身青樓权埠,卻偏偏與公主長得像,于是被迫代替她去往敵國和親煎谍。 傳聞我的和親對象是個殘疾皇子攘蔽,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,055評論 2 355

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,178評論 25 707
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn)呐粘,斷路器满俗,智...
    卡卡羅2017閱讀 134,664評論 18 139
  • 文/靜言鋒語 圖/來自網(wǎng)絡(luò) 得即高歌失即休唆垃,多愁多恨亦悠悠。人生一世不容易痘儡,生命里最渴望的辕万,往往事與愿違,感情里最...
    靜言鋒語閱讀 222評論 0 1
  • 大家都熱衷于發(fā)現(xiàn)外星人,找到外星人矾瑰,期待他們帶來高科技涡戳,拯救地球糟糕的環(huán)境,可怕的瘟疫脯倚,無休止的戰(zhàn)爭渔彰!真的是這樣的...
    袋鼠的尾巴閱讀 371評論 0 1
  • 一開始的我其實(shí)很厭倦 明明不喜歡卻還要去選擇 可是時間久了 原來發(fā)現(xiàn)自己已經(jīng)愛上了這個東西 分享幾個自己的作品 大...
    肆與十四閱讀 281評論 7 8