Tengo una solicitud HTTP GET que estoy intentando enviar. Intenté agregar los parámetros a esta solicitud creando primero un BasicHttpParams
objeto y agregando los parámetros a ese objeto, luego llamando setParams( basicHttpParms )
a mi HttpGet
objeto. Este método falla. Pero si agrego manualmente mis parámetros a mi URL (es decir, agrego ?param1=value1¶m2=value2
), se realiza correctamente.
Sé que me falta algo aquí y cualquier ayuda sería muy apreciada.
Respuestas:
Utilizo una Lista de NameValuePair y URLEncodedUtils para crear la cadena de URL que quiero.
fuente
Para construir uri con parámetros get, Uri.Builder proporciona una forma más efectiva.
fuente
A partir de HttpComponents,
4.2+
hay una nueva clase URIBuilder , que proporciona una forma conveniente de generar URI.Puede usar crear URI directamente desde la URL de cadena:
De lo contrario, puede especificar todos los parámetros explícitamente:
Una vez que haya creado el
URI
objeto, simplemente necesita crear elHttpGet
objeto y ejecutarlo:fuente
El método
me gusta
solo agrega parámetros HttpProtocol.
Para ejecutar httpGet, debe agregar sus parámetros a la URL manualmente
o use la solicitud de publicación , aquí se explica la diferencia entre las solicitudes de publicación y obtención , si está interesado
fuente
URI javadoc
Nota:
url = new URI(...)
tiene erroresfuente
fuente
Si tiene constantes,
URL
le recomiendo usar http-request simplificada construida en apache http.Puede construir su cliente de la siguiente manera:
Nota: Existen muchos métodos útiles para manipular su respuesta.
fuente