volley okhttpclient fast example android android-volley android-networking okhttp

okhttpclient - Android Volley MalformedURLException URL incorrecta



retrofit implementation (4)

Asegúrese de haber pasado la URL como el segundo parámetro en JsonObjectRequest o StringRequest. Cometí el mismo error que produjo el mismo error como el que enfrentaste.

JsonObjectRequest jsonObjectRequest = new JsonObjectRequest(Method.POST, URL, null, ResponseListener, ErrorListener);

Después de hacer una segunda solicitud de red usando Volley , siempre recibo este error. No parece importar cuál es la url que pongo. Volley siempre afirma que está mal formado.

08-04 20:16:26.885 14453-14470/com.thredup.android E/Volley﹕ [994] NetworkDispatcher.run: Unhandled exception java.lang.RuntimeException: Bad URL java.lang.RuntimeException: Bad URL at com.android.volley.toolbox.BasicNetwork.performRequest(BasicNetwork.java:127) at com.android.volley.NetworkDispatcher.run(NetworkDispatcher.java:110) Caused by: java.net.MalformedURLException: Protocol not found: at java.net.URL.<init>(URL.java:176) at java.net.URL.<init>(URL.java:125) at com.android.volley.toolbox.HurlStack.performRequest(HurlStack.java:101) at com.android.volley.toolbox.BasicNetwork.performRequest(BasicNetwork.java:93)

Investigando más a fondo, puse un par de registros en HurlStack. En

public HttpResponse performRequest(Request<?> request, Map<String, String> additionalHeaders),

la solicitud que falla es REQUEST [ ] 0x0 LOW 26. "

Por lo tanto, la línea 101 de HurlStack: URL parsedUrl = new URL(url);

falla con un URL vacío ( request.getUrl() está vacío).

Estoy usando OkHttpStack (extendiendo HurlStack). ¿Alguna idea de qué puede estar causando esto?



en realidad el problema es con tu url no con la volea. Tu url no es una URI. No hay ningún componente de protocolo en él. Necesita http:// o cualquier otro protocolo que desee. Si tiene el http en su url, asegúrese de que esté correctamente formado o no.

Por ejemplo, tu formación de url debería ser así.

public String URL = "http://www.w3schools.com/webservices/tempconvert.asmx";

No olvide leer la Especificación de URL y asegúrese de que la URL que está proporcionando es válida.


esta excepción se produce cuando está ingresando a una Url que no tiene el prefijo http// o https// verifique si hay http// con su URL. Puedes obtener más información here y see estos enlaces.