Not getting Volley response

I have a login activity that has a login button. When I click that button this code is executed:

Response.Listener<String> responseListener = new Response.Listener<String>() {
            public void onResponse(String response) {
                try {

                    JSONObject jsonResponse = new JSONObject(response);
                    boolean success = jsonResponse.getBoolean("success");

                    if (success){

                        toastMessage.makeMessage("Logging in...");

                        int user_ID = jsonResponse.getInt("userId");
                        String username = jsonResponse.getString("username");

                        saveUserData(user_ID, username);

                        Intent intent = new Intent(Login.this, MainMenu.class);


                    } else {

                        AlertDialog.Builder builder = new AlertDialog.Builder(Login.this);
                        builder.setMessage("Username or password incorrect")
                                .setNegativeButton("Retry", null)

                } catch (JSONException e) {

                    AlertDialog.Builder builder1 = new AlertDialog.Builder(Login.this);


LoginRequest loginRequest = new LoginRequest(username, password, responseListener);
RequestQueue queue = Volley.newRequestQueue(Login.this);

But when I click on the login button, there is no volley response until i click on the login button about 5 or 6 times. I click on it the first time and I wait like 15-20 seconds and nothing happens. Then I click on it again and wait 15-20 seconds and nothing happens. But when I start spam clicking the button it works. I want it to respond when I click it the 1st time and not want to have to spam click the login button. What is going wrong here?