我试图从服务器获取 JSONArray 但遇到各种错误。编辑:尝试添加所有这些导入。
import android.support.v7.app.AppCompatActivity;
import com.android.volley.Request;
import com.android.volley.RequestQueue;
import com.android.volley.Response;
import com.android.volley.Response.Listener;
import com.android.volley.NetworkResponse;
import com.android.volley.ParseError;
import com.android.volley.toolbox.JsonArrayRequest;
import com.android.volley.toolbox.JsonObjectRequest;
import com.android.volley.toolbox.Volley;
import com.android.volley.Response.ErrorListener;
public class VolleyFetcher extends AppCompatActivity
{
RequestQueue queue = Volley.newRequestQueue(this);
String url = "https://xxxxxx.json";
JsonObjectRequest jsObjRequest = new JsonObjectRequest(
Request.Method.GET, url, null, new Response.Listener<JSONArray>() {
@Override
public void onResponse(JSONArray response) {
// TODO Auto-generated method stub
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error)
{
// TODO Auto-generated method stub
}
});
queue.add(jsObjRequest);
}
我的错误:
响应无法解析为类型
JSONArray 无法解析为类型
token “jsObjRequest”上存在语法错误,此 token 后应有 VariableDeclaratorId(//行:queue.add(jsObjRequest)
如有任何建议,我们将不胜感激。
最佳答案
如果返回的结果是 JSON 对象,则应使用
JSONObjectRequest
。
如果您希望返回 JSON 数组,则应使用 JSONArrayRequest
。此请求应包含在 Volley 的工具箱包中。
结果请求声明应如下所示:
JsonArrayRequest request = new JsonArrayRequest("http://my.url.com/", new Response.Listener<JSONArray>()
{
@Override
public void onResponse(JSONArray response)
{
}
}, new Response.ErrorListener()
{
@Override
public void onErrorResponse(VolleyError error)
{
}
});
关于android - 使用 Volley 获取 JSONArray,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34376767/