Membuat permintaan standar

Pelajaran ini menjelaskan cara menggunakan jenis permintaan umum yang didukung Volley:

  • StringRequest. Tentukan URL dan terima string raw sebagai respons. Lihat Menyiapkan Antrean Permintaan untuk contoh.
  • JsonObjectRequest dan JsonArrayRequest (kedua subclass JsonRequest). Tentukan URL dan dapatkan objek atau array JSON (masing-masing) sebagai respons.

Jika respons yang diharapkan adalah salah satu dari jenis ini, Anda mungkin tidak perlu menerapkan permintaan khusus. Pelajaran ini menjelaskan cara menggunakan jenis permintaan standar ini. Untuk informasi cara menerapkan permintaan khusus Anda sendiri, lihat Menerapkan Permintaan Khusus.

Meminta JSON

Volley menyediakan class berikut untuk permintaan JSON:

  • JsonArrayRequest—Permintaan untuk mengambil isi respons JSONArray pada URL yang diberikan.
  • JsonObjectRequest—Permintaan untuk mengambil isi respons JSONObject pada URL yang diberikan, memungkinkan JSONObject opsional untuk diteruskan sebagai bagian dari isi permintaan.

Kedua class didasarkan pada class dasar umum JsonRequest. Anda menggunakannya mengikuti pola dasar yang sama dengan yang digunakan untuk jenis permintaan lainnya. Sebagai contoh, cuplikan ini mengambil feed JSON dan menampilkannya sebagai teks di UI:

Kotlin

    val url = "http://my-json-feed"

    val jsonObjectRequest = JsonObjectRequest(Request.Method.GET, url, null,
            Response.Listener { response ->
                textView.text = "Response: %s".format(response.toString())
            },
            Response.ErrorListener { error ->
                // TODO: Handle error
            }
    )

    // Access the RequestQueue through your singleton class.
    MySingleton.getInstance(this).addToRequestQueue(jsonObjectRequest)
    

Java

    String url = "http://my-json-feed";

    JsonObjectRequest jsonObjectRequest = new JsonObjectRequest
            (Request.Method.GET, url, null, new Response.Listener<JSONObject>() {

        @Override
        public void onResponse(JSONObject response) {
            textView.setText("Response: " + response.toString());
        }
    }, new Response.ErrorListener() {

        @Override
        public void onErrorResponse(VolleyError error) {
            // TODO: Handle error

        }
    });

    // Access the RequestQueue through your singleton class.
    MySingleton.getInstance(this).addToRequestQueue(jsonObjectRequest);
    
Untuk contoh penerapan permintaan JSON khusus berdasarkan Gson, lihat tutorial selanjutnya Menerapkan permintaan khusus.