android oss ListObjectOption发送网络请求.获取json数据报错。什么原因?求指点!
回 2楼qq449774982的帖子
我第一用的是 JSONObject jsonObject = new JSONObject(String json); 来获取XML数据 会报这个错 org.json.JSONException: Value 然后我换了一种方式 导入了 json.jar 架包
JSONObject jsonObject = null;
jsonObject = XML.toJSONObject(respoString json);
用这种方式后就报我第一次 发布的错误了. 不知道 什么 原因。 其实 我的目的是 调用接口罗列Bucket中的Objects 但是 过程中 会发送网络请求。就出现了 这中问题。
如果您有方法能罗列出Bucket中的Objects 的话。还请指点!感激不尽
-------------------------
回 2楼qq449774982的帖子
我把通过网络请求获取 json 数据的代码粘出来。是从 官方 给的 Demo 里找的 ,我也是这么用的,到我这就报错了!
private static FederationToken getTokenFromServer(String serverAddress, String userId) {
String queryUrl = 'http://' + serverAddress + '/distribute-token.json?user-name='+ userId;
String responseStr = null;
try {
DefaultHttpClient client = new DefaultHttpClient();
HttpGet httpGet = new HttpGet(queryUrl);
HttpResponse hr = client.execute(httpGet);
responseStr = EntityUtils.toString(hr.getEntity());
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
if (responseStr == null) {
return null;
}
// JSONObject jsonObject = null;
try {
//jsonObject = XML.toJSONObject(responseStr);
JSONObject jsonObject = new JSONObject(responseStr);
// JSONObject jsonObject = new JSONObject(responseStr);
String ak = jsonObject.getString('accessKeyId');
String sk = jsonObject.getString('accessKeySecret');
String securityToken = jsonObject.getString('securityToken');
long expireTime = jsonObject.getLong('expiration');
return new FederationToken(ak, sk, securityToken, expireTime);
} catch (JSONException e) {
Log.e('JSON', e.toString());
e.printStackTrace();
}
return null;
}
-------------------------
回 1楼oss-dev的帖子
是的啊 还请你看看我对二楼的回复。不知道您能帮忙解决吗 谢谢
-------------------------
回 6楼qq449774982的帖子
我这边拿到的 responseStr 内容是这样的。
InvalidBucketName
The specified bucket is not valid.
564BE97F58DB3A0C4E2F70F8
139.196.65.97
distribute-token.json
这样应该是 我的 业务 server 搭建就已经错了吧。还想 请教下 我要罗列Bucket中的Objects 的话 需要搭建 业务 server吗。看了几遍官方的Demo 对这个罗列Bucket中的Objects 还是不明白。不知道他需要做什么准备工作? 实现的思路步骤 能否指点我一下。 谢谢!
-------------------------
回 8楼qq449774982的帖子
谢谢 我试一试!
-------------------------
回 8楼qq449774982的帖子
您好,我换了ak/sk本地签权方式.其他的都没有改.一次就成功了.但是 这种方式 会把 accessKey 和 screctKey 暴漏在代码里。这种方式 不好.暂时先用这种方式了。非常谢谢你。等之后改善了在交流 。谢谢
赞0
踩0