domainOfBucket:你的存储空间对应的domain,可以在控制台中查看,就是下边这个。

auth:私有空间文件的访问凭证,通过getAuth()生成的值
expireInSeconds:私有空间文件的访问链接超时时间,单位(秒)
执行一下,直接在浏览器中粘贴生成的地址,看能不能访问到文件。该链接即为文件固定连接,可以放在html中的<img src=" ">中哦(公有空间),注意私有空间的地址是有寿命的。
上传文件还支持字节流、字符流上传和断点续传哦,直接上代码了:
/**
* 字符组上传
* @param zone
* @param upToken
* @return
*/
public static DefaultPutRet charArrayUpload(Zone zone,String upToken) {
// 构造一个带指定Zone对象的配置类
Configuration cfg = new Configuration(zone);
// ...其他参数参考类注释
UploadManager uploadManager = new UploadManager(cfg);
// 默认不指定key的情况下,以文件内容的hash值作为文件名
String key = null;
try {
byte[] uploadBytes = "hello qiniu cloud".getBytes("utf-8");
try {
Response response = uploadManager.put(uploadBytes, key, upToken);
// 解析上传成功的结果
DefaultPutRet putRet = new Gson().fromJson(response.bodyString(), DefaultPutRet.class);
System.out.println(putRet.key);
System.out.println(putRet.hash);
return putRet;
} catch (QiniuException ex) {
Response r = ex.response;
System.err.println(r.toString());
try {
System.err.println(r.bodyString());
} catch (QiniuException ex2) {
// ignore
}
}
} catch (UnsupportedEncodingException ex) {
// ignore
}
return null;
}
/**
* 数据流上传
* @param zone
* @param upToken
* @return
*/
public static DefaultPutRet streamUpload(Zone zone,String upToken) {
// 构造一个带指定Zone对象的配置类
Configuration cfg = new Configuration(zone);
// ...其他参数参考类注释
UploadManager uploadManager = new UploadManager(cfg);
// ...生成上传凭证,然后准备上传
// 默认不指定key的情况下,以文件内容的hash值作为文件名
String key = null;
try {
byte[] uploadBytes = "test streamUpload \n hello qiniu cloud".getBytes("utf-8");
ByteArrayInputStream byteInputStream = new ByteArrayInputStream(uploadBytes);
try {
Response response = uploadManager.put(byteInputStream, key, upToken, null, null);
// 解析上传成功的结果
DefaultPutRet putRet = new Gson().fromJson(response.bodyString(), DefaultPutRet.class);
System.out.println(putRet.key);
System.out.println(putRet.hash);
return putRet;
} catch (QiniuException ex) {
Response r = ex.response;
System.err.println(r.toString());
try {
System.err.println(r.bodyString());
} catch (QiniuException ex2) {
// ignore
}
}
} catch (UnsupportedEncodingException ex) {
// ignore
}
return null;
}
/**
* 断点续传
* @param zone
* @param upToken
* @param localFilePath
* @return
*/
public static DefaultPutRet breakPointUpload(Zone zone,String upToken,String localFilePath) {
// 构造一个带指定Zone对象的配置类
Configuration cfg = new Configuration(zone);
// ...其他参数参考类注释
// 如果是Windows情况下,格式是 D:\\qiniu\\test.png
// 默认不指定key的情况下,以文件内容的hash值作为文件名
String key = null;
String localTempDir = Paths.get(System.getenv("java.io.tmpdir"), bucket).toString();
try {
// 设置断点续传文件进度保存目录
FileRecorder fileRecorder = new FileRecorder(localTempDir);
UploadManager uploadManager = new UploadManager(cfg, fileRecorder);
try {
Response response = uploadManager.put(localFilePath, key, upToken);
// 解析上传成功的结果
DefaultPutRet putRet = new Gson().fromJson(response.bodyString(), DefaultPutRet.class);
System.out.println(putRet.key);
System.out.println(putRet.hash);
return putRet;
} catch (QiniuException ex) {
Response r = ex.response;
System.err.println(r.toString());
try {
System.err.println(r.bodyString());
} catch (QiniuException ex2) {
// ignore
}
}
} catch (IOException ex) {
ex.printStackTrace();
}
// MyPutRet myPutRet=response.jsonToObject(MyPutRet.class);
return null;
}
public static void main(String[] args) {
//fileUpload(Zone.zone0(),CredentialsManager.getUploadCredential(),"D:\\qiniu\\test.jpg");
//charArrayUpload(Zone.zone0(),CredentialsManager.getUploadCredential());
//streamUpload(Zone.zone0(),CredentialsManager.getUploadCredential());
breakPointUpload(Zone.zone0(),CredentialsManager.getUploadCredential(),"D:\\qiniu\\test.jpg");
} 你是否注意到了下边这个变量,
本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/ruanjian/article-54170-4.html
反而是悲哀
我不羡慕你
肯定有反制措施