报错如下:
报错意思是:请求的url没有冒号,正常的是http:// 或者https://。
相关说明:服务器环境为甲方提供的linux服务器,不是云服务器,相当于没有连接外网,涉及调用第三方Api需要将调用地址和端口提供给他们。配置以后才可以调用。因此在提供七牛云调用地址时,是在本地调用该方法,日志打印使用的是 http://up.qiniu.com,配置以后 ping 可以ping通,但还是报错。示例代码如下:文章来源:https://www.toymoban.com/news/detail-808359.html
Configuration cfg = new Configuration();
UploadManager uploadManager = new UploadManager(cfg);
Auth auth = Auth.create(accessKey, secretKey);
String token = auth.uploadToken(bucketName);
//上传
Response response = uploadManager.put(file.getInputStream(), fileName, token);
解决方法:Configuration cfg = new Configuration(Zone.zone0());
Configuration创建时指定区域为华南区域。
问题原因:阅读源码可知使用的url和地区有关,应该是在内网环境,不指定区域,在Zone.autoZone()无法获取到区域导致请求的url为空。文章来源地址https://www.toymoban.com/news/detail-808359.html
public Zone() {
}
public static Zone zone0() {
return (new Zone.Builder()).upHttp("http://up.qiniu.com").upHttps("https://up.qbox.me").upBackupHttp("http://upload.qiniu.com").upBackupHttps("https://upload.qbox.me").iovipHttp("http://iovip.qbox.me").iovipHttps("https://iovip.qbox.me").rsHttp("http://rs.qiniu.com").rsHttps("https://rs.qbox.me").rsfHttp("http://rsf.qiniu.com").rsfHttps("https://rsf.qbox.me").apiHttp("http://api.qiniu.com").apiHttps("https://api.qiniu.com").build();
}
public static Zone huadong() {
return zone0();
}
public static Zone zone1() {
return (new Zone.Builder()).upHttp("http://up-z1.qiniu.com").upHttps("https://up-z1.qbox.me").upBackupHttp("http://upload-z1.qiniu.com").upBackupHttps("https://upload-z1.qbox.me").iovipHttp("http://iovip-z1.qbox.me").iovipHttps("https://iovip-z1.qbox.me").rsHttp("http://rs-z1.qiniu.com").rsHttps("https://rs-z1.qbox.me").rsfHttp("http://rsf-z1.qiniu.com").rsfHttps("https://rsf-z1.qbox.me").apiHttp("http://api-z1.qiniu.com").apiHttps("https://api-z1.qiniu.com").build();
}
public static Zone huabei() {
return zone1();
}
public static Zone zone2() {
return (new Zone.Builder()).upHttp("http://up-z2.qiniu.com").upHttps("https://up-z2.qbox.me").upBackupHttp("http://upload-z2.qiniu.com").upBackupHttps("https://upload-z2.qbox.me").iovipHttp("http://iovip-z2.qbox.me").iovipHttps("https://iovip-z2.qbox.me").rsHttp("http://rs-z2.qiniu.com").rsHttps("https://rs-z2.qbox.me").rsfHttp("http://rsf-z2.qiniu.com").rsfHttps("https://rsf-z2.qbox.me").apiHttp("http://api-z2.qiniu.com").apiHttps("https://api-z2.qiniu.com").build();
}
到了这里,关于七牛云上传报错 Expected URL scheme ‘http‘ or ‘https‘ but no colon was found的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!