图片java 代码实现七牛云存储图片

七牛云存储  时间:2021-01-07  阅读:()

Java代码实现七牛云存储图片

项目想把图片上传到七牛云存储上笔者把七牛最简单的用法示范一下方便初学者。文章如有错误欢迎各位指出。

比如上面的beautiful girl图片的url是http://img.blog.c sdn.net/20160119111734404我们最终用代码上传到七牛图床后 七牛云存储的 ur l 为http://7xq7ik.c om 1.z0.glb.c louddn.c om/testimagea

本文地址http://blog.cs dn.net/never_c xb/artic le/details/50534859转载请注明出处准备工作

注册一个七牛账户

网址https://portal.qin iu.c om/s ignup?c ode=3 lpzf1 unpyr0y

登录七牛开发者自助平台查看Access Key和Secret Key 这两个Key代码会用到

下载七牛依赖jar包

可以用包管理器gradle下载查看这篇文章 《Ec lips e使用Gradle下载Jar包全纪录》

手动下载依赖包qiniu-j ava-s dk-7依赖Google Gs on 、 okhttp okhttp依赖okio。

新建空间

图片会上传到某个空间里代码里会用到空间名。

我们的项目需求是抓取图片

输入图片原始的的ur l然后利用代码抓取到七牛图床上返回图片在七牛上的ur l。首先定义变量存放你的Key和空间名。public static final String ACCESS_KEY=“******”; //你的access_key public static final String SECRET_KEY=“******”; //你的secret_key public static final String BUCKET_NAME=“******”; //你的s ecret_key

//获取到Access Key和Secret Key之后您可以按照如下方式进行密钥配置Auth auth=Auth.c reate(ACC ES S_KEY,S ECRET_KEY);

//获取空间管理器

Buc ketManag er buc ketManager=new Buc ketManager(auth);try{

//要求url可公网正常访问Buc ketManager.fetc h(url,buc ketName,key);

//@param url网络上一个资源文件的URL

//@param bucketName空间名称

//@param key空间内文件的key[唯一的]

DefaultPutRet putret=buc ketManager.fetc h(origina lUrl,BUC KET_N AME, “tes timage”);

Sys tem.out.println(putret.key);

System.out.println(“succeed upload image”);

} catch(QiniuException e1) {e 1.printStackTrac e();

}

代码思路很简单根据key获取到空间管理器再指定图片的原始ur l、空间名、 图片的key就可以把图片上传到七牛上了

在七牛的空间内容管理部分可以看到图片已经上传好了 新的 url为http://7xq7ik.c om 1.z0.glb.c louddn.c om/testimage

那么问题来了如何获取图片新的ur l呢总不能每次都通过浏览器访问七牛的网站如何在代码里获取我们图片在七牛上的ur l呢

域名+key获取新的ur l

还记得刚才的代码里我们给图片指定了key吗只是图片在七牛空间里的唯一表示。刚才 我 们 指 定 的 key 为 tes timage  看 新 的 图 片 url 为http://7xq7ik.c om 1.z0.glb.c louddn.c om/testimage新url就是刚才的key结尾的。

前面一大串的字符是七牛给我们的默认域名你也可以自定义域名。

那么代码思路也很简单定义一个变量存放空间的域名然后域名拼接图片的key就得到图片上传后的ur l。private static final String BUCKET_HOST_NAME=“7xq7ik.com 1.z0.glb.clouddn.com”;public String uploadByUrl(String originalUrl) {

//.. .

String imageKey=“testimage”;

DefaultPutRet putret=buc ketManager.fetc h(origina lUrl,BUC KET_N AM E, image Key);new Url=BUC KET_HO S T_NAME+“/”+image Key;

System.out.println(newUr l);

System.out.println(“succeed upload image”);

} catch(QiniuException e1) {e 1.printStackTrac e();r eturn null;

输出信息

7xq7ik.com1.z0.glb.clouddn.com/testimage succeed upload image

邀请注册

如果您还没有注册七牛  可以通过我的邀请链接注册https://portal.qin iu.c om/s ignup?c ode=3 lpzf1 unpyr0y体验用户有一些免费空间。

参考文章

七牛操作工具类(Java版)

七牛关于JAVA SDK的各种Demo

JUSTG(5.99美元/月)最新5折优惠,KVM虚拟虚拟512Mkvm路线

Justg是一家俄罗斯VPS云服务器提供商,主要提供南非地区的VPS服务器产品,CN2高质量线路网络,100Mbps带宽,自带一个IPv4和8个IPv6,线路质量还不错,主要是用户较少,带宽使用率不高,比较空闲,不拥挤,比较适合面向非洲、欧美的用户业务需求,也适合追求速度快又需要冷门的朋友。justg的俄罗斯VPS云服务器位于莫斯科机房,到美国和中国速度都非常不错,到欧洲的平均延迟时间为40毫秒,...

GreenCloudVPS$20/年,新加坡/美国/荷兰vps/1核/1GB/30GB,NVMe/1TB流量/10Gbps端口/KVM

greencloudvps怎么样?greencloudvps是一家国外主机商,VPS数据中心多,之前已经介绍过多次了。现在有几款10Gbps带宽的特价KVM VPS,Ryzen 3950x处理器,NVMe硬盘,性价比高。支持Paypal、支付宝、微信付款。GreenCloudVPS:新加坡/美国/荷兰vps,1核@Ryzen 3950x/1GB内存/30GB NVMe空间/1TB流量/10Gbps...

MineServer:洛杉矶CN2 GIA VPS/512MB内存/20GB NVME/800GB流量/200Mbps/KVM,58元/季

mineserver怎么样?mineserver是一家国人商家,主要提供香港CN2 KVM VPS、香港CMI KVM VPS、日本CN2 KVM VPS、洛杉矶cn2 gia端口转发等服务,之前介绍过几次,最近比较活跃。这家新推出了洛杉矶CN2 GIA VPS,512MB内存/20GB NVME/800GB流量/200Mbps/KVM,58元/季,并且进行了带宽升级,同时IP更改为美国IP。点击...

七牛云存储为你推荐
虚拟主机代理虚拟主机代理哪家好,应该选择哪个家?php虚拟空间php虚拟主机空间如何连接mysql成都虚拟空间虚拟主机哪家最好~~~重庆网站空间重庆有没有发展空间?什么是虚拟主机虚拟主机是什么安徽虚拟主机安徽众仁联合科技有限公司是做什么的啊??安徽虚拟主机华夏网络科技有限公司的介绍华众虚拟主机管理系统华众虚拟主机管理系统请问。华众 虚拟主机管理系统 这个问题 怎么解决 。就是后台可以开通虚拟主机 没有问题,但是 删除虚拟主机 后台显示删除成功的,但是实际在服务器上 文件夹 ftp iis站点 都没有被删除 是什么问题华众虚拟主机管理系统华众虚拟主机管理系统怎么样?备案域名哪些域名可以在国内备案?
过期域名 成都主机租用 北京主机租用 代理域名备案 vir naning9韩国官网 buyvm 主机测评网 edis gitcafe 鲜果阅读 NetSpeeder 青果网 ev证书 北京主机 华为网络硬盘 帽子云 hkg 搜索引擎提交入口 免费网页空间 更多