Eu tenho uma solicitação HTTP GET que estou tentando enviar. Tentei adicionar os parâmetros a essa solicitação, primeiro criando um BasicHttpParams
objeto e adicionando os parâmetros a esse objeto, depois chamando setParams( basicHttpParms )
meu HttpGet
objeto. Este método falha. Mas se eu adicionar manualmente meus parâmetros ao meu URL (ou seja, acrescentar ?param1=value1¶m2=value2
), ele será bem-sucedido.
Sei que estou perdendo alguma coisa aqui e qualquer ajuda seria muito apreciada.
Respostas:
Eu uso uma lista de NameValuePair e URLEncodedUtils para criar a seqüência de URL que eu quero.
fonte
Para criar uri com parâmetros get, o Uri.Builder fornece uma maneira mais eficaz.
fonte
A partir de HttpComponents,
4.2+
existe uma nova classe URIBuilder , que fornece uma maneira conveniente de gerar URIs.Você pode usar o URI de criação diretamente do URL da string:
Caso contrário, você pode especificar todos os parâmetros explicitamente:
Depois de criar o
URI
objeto, basta criarHttpGet
e executar o objeto:fonte
O método
gostar
adiciona apenas parâmetros HttpProtocol.
Para executar o httpGet, você deve anexar seus parâmetros ao URL manualmente
ou use a solicitação de publicação, a diferença entre solicitações de obtenção e publicação é explicada aqui , se você estiver interessado
fonte
URI javadoc
Nota:
url = new URI(...)
é de buggyfonte
fonte
Se você tiver constante
URL
, recomendo o uso de solicitação simplificada de http baseada no apache http.Você pode criar seu cliente da seguinte maneira:
Nota: Existem muitos métodos úteis para manipular sua resposta.
fonte