Você está aqui: Adobe Flex ::: Classes, Controles e Componentes ::: HTTPService

Aprenda a usar a classe HTTPService para comunicação remota

Quantidade de visualizações: 13529 vezes


A classe pública HTTPService reside no pacote mx.rpc.http e é usada para fazer requisições remotas a serviços HTTP simples, tais como arquivos texto, arquivos XML ou scripts e páginas que retornam dados dinâmicos (PHP, ASP, JSP, etc).

Veja a posição desta classe na hierarquia de classes do Flex 2.0:
Object
  EventDispatcher
    AbstractInvoker
      HTTPService
Quando efetuamos uma chamada ao método send() do objeto HTTPService, ele efetua uma requisição HTTP para a URL especificada, e uma resposta HTTP é retornada. Opcionalmente, podemos passar parâmetros para a URL especificada. Quando não passamos por um serviço de proxy, apenas os métodos HTTP POST e GET são permitidos. No entanto, quando definimos o valor true para a propriedade useProxy e usamos o serviço de proxy, os métodos HTTP HEAD, OPTIONS, TRACE e DELETE também são permitidos.

O primeiro passo para usar um objeto HTTPService é definir um valor para a propriedade url. É esta propriedade que informa ao objeto onde localizar o recurso para o qual uma requisição será feita. Veja que este valor pode ser uma URL relativa ou absoluta. Veja um exemplo de URL absoluta:
<mx:HTTPService id="login" 
  url="http://www.arquivodecodigos.net/logar.php" 
  ....
  ....
</mx:HTTPService>
Veja um exemplo de URL relativa (o arquivo dados.xml localizado no mesmo diretório do arquivo SWF):
<mx:HTTPService id="categoria" 
  url="dados.xml" 
  ....
  ....
</mx:HTTPService>
Agora que sabemos como criar uma nova instância de HTTPService, é hora de aprender a fazer requisições, trabalhar os resultados e passar parâmetros.

O simples fato de se criar um objeto HTTPService não faz uma requisição automática para carregar os dados solicitados. Antes, é preciso efetuar uma chamada ao seu método send(). Geralmente este método é chamado em resposta a algum evento provocado pelo usuário ou pela aplicação em si. Suponhamos que você tenha um HTTPService com o id "login". O método send() deste objeto poderia ser chamado a partir do evento click de um botão. Assim:
<mx:Button label="Acessar!" click="login.send()"/>
É preciso ter em mente as restrições de segurança aplicadas pelo Flash Player. Caso esteja visualizando mensagens de erro, verifique se as causas são aquelas descritas na seção de dicas e truques sob o nome de "Segurança".

Depois que o método send() envia uma requisição, a aplicação Flex aguarda um resultado, ou resposta. Esta resposta vem em forma de um evento chamado result. Veja que este evento só é disparado quando a resposta completa tiver sido recebida. Veja um trecho de código no qual uma mensagem Alert é exibida depois que os dados são recebidos:
<mx:HTTPService id="categorias" url="categorias.xml" 
  result="mx.controls.Alert.show('Dados OK!')"/>
É claro que, após receber uma resposta HTTP, queremos manipular os dados recebidos e não somente exibir uma mensagem avisando que os dados foram recebidos corretamente. Bem, a propriedade lastResult contém os dados resultantes da requisição. Como neste exemplo nós estamos esperando uma resposta XML, veja no exemplo abaixo como usar estes dados para popular (palavra estranha demais, não?) um ComboBox:
<?xml version="1.0" encoding="iso-8859-1"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">

  <mx:HTTPService id="cat" url="categorias.xml" 
    result="preencherComboBox()"/>

  <mx:Panel id="painel" title="Estudos" status="Active" 
     height="300" width="200" paddingTop="10" 
     paddingLeft="10" paddingRight="10" 
     paddingBottom="10">

    <mx:ComboBox id="categorias" width="150"/>
   
    <mx:Button label="Acessar HTTP!" click="cat.send()"/>

  </mx:Panel>

  <mx:Script>
    <![CDATA[
      private function preencherComboBox():void{
        categorias.dataProvider = 
          cat.lastResult.categorias.categoria;
      }
    ]]>
  </mx:Script>  

</mx:Application>
Antes de executar este exemplo, certifique-se de que o seu arquivo XML tenha uma estrutura semelhante à:
<?xml version="1.0" encoding="iso-8859-1"?>
<categorias>
  <categoria>Calçados</categoria>
  <categoria>Eletrônicos</categoria>
  <categoria>Informática</categoria>  
</categorias>


Link para compartilhar na Internet ou com seus amigos:

Vamos testar seus conhecimentos em Ética e Legislação Profissional

Ética profissional, social, política

A delimitação do que é ético e do que é moral é motivo de grande confusão. Ao longo da história do pensamento humano, podemos identificar que, por estarem em relação constituinte um do outro, ambos os domínios da vida humana são pensados como a mesma coisa. Contudo, ética e moral têm os seus sentidos e práticas distintas.

A respeito disso, assinale a alternativa correta:

A) A moral é ausente de normas de condutas sociais.

B) A ética é um exercício subjetivo sempre guiado pela moral.

C) A moral diz respeito a um conjunto de normas e tradições universais.

D) Ética se aplica à ação no âmbito profissional e público.

E) A ética tem um caráter universal e a moral, um caráter particular.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Fenômeno de Transportes e Hidráulica

O manômetro

Um manômetro é o instrumento utilizado para medir a pressão de fluidos contidos em recipientes fechados. O manômetro para medição da pressão absoluta é usado quando pressões devem ser medidas, independentemente da pressão atmosférica. A pressão do meio medido é determinada contra uma pressão de referência, sendo que esta última corresponde ao ponto zero da pressão absoluta.

Nesse contexto, determine a pressão manométrica em P devido à deflexão do mercúrio do manômetro em U da figura a seguir.



A) Aproximadamente 77kPa.

B) Aproximadamente 89kPa.

C) Aproximadamente 94kPa.

D) Aproximadamente 106kPa.

E) Aproximadamente 111kPa.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Fundações

Fundações

Ano: 2019 Banca: IBADE Órgão: Prefeitura de Jaru - RO Prova: IBADE - 2019 - Prefeitura de Jaru - RO - Engenheiro Civil

Uma sondagem foi realizada segundo a norma ABNT NBR 6484:2001 (Solo - Sondagens de simples reconhecimento com SPT - Método de ensaio). Após a execução das 3 etapas previstas no ensaio, o seguinte resultado foi apresentado:

8/16 - 10/14 - 13/16

O índice de resistência à penetração (N) é:

A) 18

B) 23

C) 31

D) 46

E) 54
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em

Dimensionamento de pilares de extremidade

As solicitações que ocorrem num pilar de extremidade podem ser as forças normais e os momentos fletores. No método de dimensionamento do pilar-padrão com curvatura aproximada, considera-se um momento mínimo que deverá ser comparado com os demais momentos de 1ª ordem.

Diante do exposto, qual é o valor do momento mínimo nas direções x e y do pilar de extremidade apresentado na figura a seguir?



A) M1d, mín, x = 4025,65KN.cm; M1d, mín, y = 2499,5KN.cm.

B) M1d, mín, x = 1585,25KN.cm; M1d, mín, y = 2389,21KN.cm.

C) M1d, mín, x = 2500KN.cm; M1d, mín, y = 3056,5KN.cm.

D) M1d, mín, x = 2028,6KN.cm; M1d, mín, y = 3056,5KN.cm.

E) M1d, mín, x = 2028,6KN.cm; M1d, mín, y = 2499KN.cm.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em JavaScript

Analise o seguinte código JavaScript

let valores = [1, 2, 3];
valores[6] = 9;
document.write(valores[5]);

Qual é o resultado de sua execução?

A) undefined

B) 9

C) 2

D) 3

E) Um erro de execução
Verificar Resposta Estudar Cards Todas as Questões

Veja mais Dicas e truques de Adobe Flex

Dicas e truques de outras linguagens

Códigos Fonte

Programa de Gestão Financeira Controle de Contas a Pagar e a Receber com Cadastro de Clientes e FornecedoresSoftware de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento
Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidadesControle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades
Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: Delphi
6º lugar: C
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2024 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 36 usuários muito felizes estudando em nosso site.