Android JSON:无法获得响应

时间:2019-07-25 03:48:02

标签: android json android-volley

我正在尝试从OpenWeatherAPI获取JSON响应,以将当前天气整合到我的应用中。我曾经用volley发出一个简单的请求来获取JSON响应,但是每次都没有得到响应。相反,它总是触发onErrorResponse方法。我要进行哪些更改才能使其正常工作?

我已在清单中添加了使用Internet权限。

我已经尝试了从许多来源(包括官方Android开发人员文档,Stack Overflow的其他问题等)中获取JSON响应的解决方案,但是所有这些都失败了。

我首先使用JSONObjectRequest而不是StringRequest,但是即使那样也不能提供我所需的结果。

/*
    Create a request queue to fetch the JSONObject response.
*/
RequestQueue queue = Volley.newRequestQueue(Objects.requireNonNull(getContext()));

/*
    JSON Object request.
*/
StringRequest request = new StringRequest(Request.Method.GET, url, new Response.Listener<String>() {
    @Override
    public void onResponse(String response) {
        Toast.makeText(getContext(), response, Toast.LENGTH_SHORT).show();
    }
}, new Response.ErrorListener() {
    @Override
    public void onErrorResponse(VolleyError error) {
        Toast.makeText(getContext(), "No JSON", Toast.LENGTH_SHORT).show();
    }
});
queue.add(request);

我希望Toast显示响应,但是Toast显示“ No JSON”。

1 个答案:

答案 0 :(得分:0)

在您的URL之前添加“ https://”。您将在浏览器上得到响应,但在Android中则不会。

相关问题