我需要完成的事情很简单 - 我使用 OKHttp 从我的服务器获取 JSON 编码响应,并且我需要解析一个简单(一维)JSON 响应以提取单个值。
我编写了一个简单的代码 fragment ,但出现错误。
这是 OKHttpClient 的代码,以防万一:
OkHttpClient client = new OkHttpClient();
RequestBody formVars = new FormBody.Builder().add(..vars..).build();
Request request = new Request.Builder().url(url).post(formVars).build();
Response response = null;
try {
response = client.newCall(request).execute();
JSONObject jj = new JSONObject((Map) response.body());
String e = jj.getString("status");
} catch {
...
}
我收到的错误(红线)位于 jj.getString("status");
:
未处理的异常:org.json.JSONException
JSON 字符串很简单
{"status":"1"}
最佳答案
您忘记将该响应转换为字符串。您需要做的就是:
String stringResponse = response.body().string();
JSONObject jj = new JSONObject(stringResponse);
关于java - 从 JSON 响应中获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37086007/