Como executar solicitações de postagem http no android

Post HTTP faz parte de uma aula HTTP depreciada como Org.apache.http e androidhttpclient como do Android 5.1. Migre seu código para as classes httpurlconnection que inclui a funcionalidade de postagem.A postagem HTTP é usada em Java para solicitar que um servidor da Web específico receba e armazene dados enviados em um formulário de solicitação. Os dados são submetidos e armazenados em pares de valor de nome. Exemplos de pares incluem: e-mail - seu endereço de e-mail - nome de usuário - seu nome de usuário e senha - sua senha.

Passos

Parte 1 de 2:
Criando um objeto bloco e httpurlconnection
1. Adicionar permissões na Internet ao manifesto do Android. O Android Manifest é um arquivo XML que fornece informações importantes para o sistema Android que determina a compatibilidade do dispositivo e o acesso aos recursos. No AndroidManifest.Arquivo XML, insira a seguinte linha para fornecer acesso à Internet.
 Android: nome ="android.permissão.INTERNET" />
  • 2. Crie um bloco de try. Em Java, uma declaração de tentativa é um manipulador de exceção que impedirá que o programa falhe se não for capaz de executar uma ação. Porque isso exigirá uma conexão com um local de rede, uma declaração de tentativa vai pegar uma exceção se não for capaz de estabelecer uma conexão. Você pode adicionar isso a um novo método Java.
    tente {// digite instruções que podem causar exceções}
  • 3. Construir objetos httpurlconnection e url. Java é uma linguagem orientada a objetos. Um objeto é composto por estados e comportamentos que é uma instância de uma classe. O objeto HttpurLConnection envia e recebe dados pela Internet. No seu código, inicie seu novo método criando um objeto URL e atribua-o a uma URL para o objeto HTTPurlConnection se conectar a.
    URL URL = Novo URL ("http: // exampleurl.com / ") - cliente httpurlconnection = (httpurlconnection) URL.OpenConnection ()-
  • Para as melhores práticas, estabeleça os objetos URL e httpurlconnection fora do bloco de tente para facilitar a captura de exceções.
  • URL URL = Novo URL ("http: // exampleurl.com / ") - cliente httpurlconnection = null-tente {cliente = (httpurlconnection) URL.OpenConnection () -}
    Parte 2 de 2:
    Postar a solicitação de saída e manipulação de exceções
    1. Defina o método de solicitação para postar. Para enviar informações para o servidor, você deve definir o tipo de objeto do HttpurlConnection para postar e definir a saída como true usando setdooutput (). Use a função SetRequestProperty () para definir uma propriedade de solicitação geral que requer dois elementos, uma chave com uma solicitação conhecida do servidor e um valor contido dentro da chave correspondente.
    • A função SetRequestProperty () é usada como o cabeçalho de solicitação de codificação de aceitação para desativar a descompressão automática.
    cliente.SetRequestmethod ("Post") - Cliente.SetRequestProperty ("Key", "Valor") - Cliente.setdooutput (true)-
  • 2. Saída do fluxo para o servidor. Você deve solicitar o fluxo de saída do servidor para poder gravar no fluxo de saída ou postagem e, em seguida, lavar o fluxo quando terminar.
    Saída do OutputStreamPost = New BufferedOutputStream (cliente.GetOutputStream ()) - Writestream (saídaPost) -Outputpost.flush () - saídapost.perto()-
  • Por motivos de desempenho, é uma boa ideia deixar o servidor saber quão grande em bytes será o conteúdo. O melhor método é setfixedlengthstreamingmode (int) quando o comprimento do corpo é conhecido, enquanto o SetChunkedStreamingMode (INT) é usado se for o comprimento. Não usar qualquer um dos métodos anteriores faz com que o objeto HttpurlConnection seja buffer o corpo completo na memória antes de ser transmitido.
  • cliente.setfixedlengthstreamingmode (saídaPost.getbytes ().comprimento) -cliente.SetChunkedstreamingMode (0)-


  • 3. Pegar quaisquer exceções. Após a declaração tente, use o bloco de captura para verificar uma exceção para entrada e saída com ioexception, pegar um erro de URL com a exceção MalformedURL e verificar se o URL não fornece uma resposta no tempo com o SocketTimeOxception.
    Catch (erro de malformadurlexception) {// lida com um URL inserido incorretamente (SocketTimeOxception Error) {// lida com o tempo limite de acesso URL.} Catch (erro ioexception) {// manipula erros de entrada e saída}
  • 4. Desconectar do URL. Depois de terminar sua conexão de URL, você precisará desconectar a partir do URL. Certifique-se de verificar se você está conectado a um URL antes de tentar desconectar.
    finalmente {if (cliente != null) // Certifique-se de que a conexão não seja nula.cliente.desconectar()-}
  • Pontas

    Coisas que você precisa

    • Java IDE
    • Ferramentas de desenvolvimento Android (SDK, emulador, etc.)
    • Telefone do desenvolvedor Android ou outro dispositivo alimentado ao Android (opcional para testes)
    • Conexão com a Internet (para testes)
    Compartilhe na rede social:
    Semelhante