Para servir a sua página na Internet do módulo Coelho usa funções HTTP

Rabbit Real-time Web Page

Para servir a sua página Web, o módulo HTTP Coelho usa funções e estruturas previstas no Dynamic C para servir o arquivo página da Web a pedido do cliente. As atualizações do programa principal laço as variáveis de tempo, uma vez por segundo.

Page Design

  

Listagem 6-2 é o código HTML para a Rede artigo 6-1 na Web page. A página usa tags HTML para aconselhar o browser como exibir o conteúdo da página. Cada tag consiste em um texto fechado por parênteses em ângulo (). A seção Em Profundidade de redes neste tutorial tem mais detalhes sobre as tags HTML e como utilizá-los. Por agora, a seção relevante do código é a cada cinco linhas que começam com uma marca de parágrafo (

). Uma marca parágrafo diz ao navegador para exibir a informação que resulta em um novo parágrafo. A marca, primeiro parágrafo, faz com que o navegador para exibir o texto, "Este programa Rabbit tem funcionado por:". Cada uma das quatro linhas que se seguem contém um Server Side Include # echo directiva que insere o valor de uma variável na página. A directiva Server Side Include usa o mesmo como delimitadores de um comentário HTML. Um comentário, que é o texto que o browser ignora e não exibir, está cercada por . Ao receber uma página que contém um comentário HTML, o navegador exibe a página da mesma, como se o seu comentário e delimitadores não estavam presentes. Outro uso de delimitadores de comentário é permitir que uma página para especificar Server Side Include (SSI) as directivas que o servidor executa antes de servir a página para o navegador. Antes de servir uma página contendo uma directiva de SSI, o servidor executa a directiva e substitui os delimitadores eo texto entre eles com o resultado da execução da directiva. Se por algum motivo, o servidor não suporta a directiva, o servidor ignora a directiva eo navegador trata da directiva, como um comentário, que não é exibido.

A directiva # echo diz ao servidor para substituir a marca comentário e seu conteúdo com o valor da variável chamada. Por exemplo, na primeira directiva, o servidor substitui com o valor da variável dia no servidor. Se o dia é igual a 5, o navegador recebe e exibe Dias: 5. A seção Em Profundidade de redes neste tutorial tem mais detalhes sobre # echo e outras Server Side Includes.

TINI Real-time Web Page

Para usar um TINI para servir páginas da Web com conteúdo dinâmico, você tem algumas opções. Seu primeiro pensamento pode ser usar a classe HTTPServer fornecido com o sistema operacional TINI. No entanto, este built-in servidor Web só pode servir páginas estáticas. Servindo de dados dinâmica exigiria alterar os dados nas páginas armazenadas sempre que as alterações de conteúdo. É mais eficiente para recuperar os dados dinâmicos no pedido e inseri-lo na página como ela está sendo servida. Outra opção é instalar e executar um programa de servidor que suporta servlets Java. Um servlet é um componente de software que possa responder a entrada do usuário e gerar conteúdo dinâmico para páginas da Web. Na maioria dos casos, os servlets são as mais eficazes e de economia de tempo modo a permitir um servidor Web para servir conteúdo dinâmico. Capítulo 7 tem mais sobre servlets e como usá-los.

Uma terceira opção é escrever um servidor Web básico que usa a classe ServerSocket e adiciona conteúdo dinâmico em que serve de suas páginas. Para algumas aplicações de baixo volume que sirvam uma ou algumas páginas, este tipo de caseiro servidor pode fazer o trabalho sem aumentar a complexidade muito. O exemplo neste tutorial de rede usa a classe ServerSocket para criar um servidor de base que serve uma página que exibe a quantidade de tempo que o TINI foi instalado e funcionando. Quer ou não você decidir usar esta abordagem, o código desta aplicação é interessante como uma demonstração das responsabilidades de um servidor web. O servidor Web responde a pedidos para se conectar a uma porta específica. Quando um host conectado envia uma solicitação HTTP para uma página de suporte, o servidor calcula os valores das variáveis a página contém, escreve o conteúdo da página para o socket, e fecha o socket.

Protocolos para Servir Páginas Web

Os exemplos neste tutorial rede mostrou como navegadores da Web usam o protocolo de transferência de hipertexto (HTTP) para solicitar páginas da Web e as páginas da Web em si são codificados usando a linguagem de marcação de hipertexto (HTML). Além disso, algumas páginas no lado do servidor incluem diretivas (SSI) para permitir que uma página da Web para exibir dados dinâmicos ou adicionar outros recursos não disponíveis em HTML sozinho.

Esta seção tem mais detalhes sobre HTTP, HTML e SSI, com o foco em sistemas embutidos como pode usar cada servindo páginas com conteúdo dinâmico.

Usando o Hypertext Transfer Protocol

HTTP é um padrão de aplicação muitos protocolos de nível usado em comunicações de rede. Rede artigo 6-5 mostra a localização do protocolo HTTP em uma pilha de rede. Embora em teoria uma comunicação HTTP pode usar qualquer protocolo confiável para chegar ao seu destino em uma rede, na prática, quase todas as pilhas de rede passar comunicações HTTP através de camadas TCP e IP. Um aplicativo que usa HTTP 266 pode ser um navegador da Web, as páginas que as solicitações da Web, ou um servidor Web, páginas da Web que retorna a seu pedido. Qualquer um que tenha navegado na internet tem utilizado HTTP. Quando um navegador envia uma solicitação para uma página da Web para a rede, o pedido contém uma URL que identifica a localização e nome do arquivo da página. Capítulo 4 descreveu como uma rede utiliza as informações na URL para determinar onde a caminho de uma comunicação.

Na aprendizagem do endereço IP que está hospedando a página da Web desejado, o cliente pede para abrir uma conexão TCP com o computador nesse endereço. Por padrão, servidores Web servem as páginas na porta 80. Se um servidor está usando um número de porta diferente, o URL especifica o número, conforme explicado no Capítulo 4. Quando a ligação tiver sido estabelecida, o navegador envia uma mensagem contendo uma solicitação HTTP para uma página, eo computador receptor responde pelo serviço, ou enviar, a página da Web para o computador solicitante através da conexão TCP. A vantagem de usar as páginas da Web para fornecer informações é que a interface do navegador é universal. Se você colocar um servidor da Web na Internet, qualquer pessoa com um navegador e uma conexão com a Internet pode visualizar as páginas do servidor. Os motores de busca permitir que os usuários encontrem sua página, mesmo que eles não sabem o endereço IP ou nome de domínio. Páginas da Web não tem que estar na Internet, no entanto. Você pode fazer uma página disponível somente dentro de uma rede local. Se desejar, você também pode restringir o acesso especificando que os endereços IP podem acessar uma página ou exigindo uma senha para acessar a página. Em qualquer caso, você não precisa se limitar a comunicação para os usuários que estão utilizando hardware ou software específico. Como os exemplos mostram, no capítulo 7, um servidor pode também receber informações de um navegador. Uma página da Web pode permitir que os usuários enviem informações para o computador que está a servir uma página, e que o computador pode usar essas informações para qualquer finalidade.

Versões do HTTP

HTTP versão 1.1 é especificado no RFC 2616: Hypertext Transfer Protocol - HTTP/1.1. RFC1945 contém as versões anteriores, HTTP 1.0 e 0.9.

Versão 1.1 adiciona capacidades de largura de banda da rede de conservação, melhoria da segurança e da notificação de erro, permitindo que os clientes para especificar linguagens preferenciais ou conjuntos de caracteres, e permitindo que o buffer mais flexível, dividindo os dados em pedaços. Muitos sistemas embarcados servir páginas Web pequeno e simples. Estes sistemas podem ganhar pouco benefício no apoio HTTP 1.1 e assim poderá usar 1,0 para a simplicidade. HTTP 1.0 servidores também devem responder adequadamente às solicitações dos clientes 0,9. Um browser que suporte HTTP 1.1 não deve ter problemas de comunicação com um servidor 1.0. Dynamic C's cumpre servidor HTTP com HTTP 1.0. O Tynamo servidor Web usado no capítulo 7 de exemplos TINI implementa os elementos exigidos no HTTP 1.1. Provavelmente o motivo principal de um sistema embarcado pode usar HTTP 1.1 é o suporte para conexões persistentes, o que pode reduzir o número de conexões que o servidor tem de abrir e fechar. Com HTTP 1.0, cada solicitação requer uma nova conexão. Se um cliente solicita uma página da Web que contém vários links para imagens, o pedido de página, assim como cada pedido de uma imagem requer sua própria conexão, que por sua vez, exige que o servidor eo cliente para fazer o aperto de mão para abrir e fechar cada conexão . Solicitando várias páginas dentro de um curto período de tempo também exige uma nova conexão para cada página. Em contraste, com o HTTP 1.1, o comportamento padrão é conexões persistentes, quando uma conexão é deixada em aberto até o cliente ou servidor determina que a comunicação está completa ou o servidor fecha a conexão após um período de inatividade. Os documentos RFC soletrar os recursos mínimos que um servidor HTTP deve ter. Os requisitos variam de acordo com a versão do HTTP.

Elementos de uma mensagem HTTP

Uma mensagem HTTP consiste de um pedido inicial ou na linha de status, mensagem cabeçalhos opcionais, uma linha em branco, e um corpo de entidade opcional. (HTTP 0,9 não suporta linhas de status ou cabeçalhos.) HTTP suporta dois tipos de mensagens, pedidos e respostas. Um cliente envia uma solicitação para pedir um servidor para um recurso, eo servidor devolve uma resposta que contém o recurso ou o status da informação.

Ao receber uma página que inclui imagens, normalmente o cliente envia uma solicitação GET para cada imagem. Além do método GET, HTTP 1.0 e depois definir os métodos POST e HEAD (Tabela 6-1). HEAD é semelhante a GET, exceto que o servidor retorna somente os cabeçalhos que iria enviar na resposta a uma solicitação GET para o recurso, mas não o recurso em si. O método POST permite que um cliente para enviar dados para um recurso no servidor. O servidor passa os dados recebidos no corpo da mensagem para o programa, processo ou outro recurso especificado na linha de pedido. O recurso chamado usa os dados. Uma utilização comum para o POST é permitir que os usuários enviem dados inseridos em um formulário para um programa CGI, que processa os dados e envia uma resposta ao cliente. (Capítulo 7 tem mais sobre CGI.) Mas uma solicitação POST pode especificar qualquer recurso, eo recurso pode usar os dados de forma alguma. HTTP 1.1 A norma diz que todos os servidores de propósito geral deve, em apoio mínimo de métodos GET e HEAD. HTTP 1.1 define métodos adicionais. Um que sistemas embarcados podem usar PUT é que, como o POST, permite ao cliente enviar dados para o servidor. Mas, em vez de nomear um recurso para receber dados no corpo da mensagem, um pedido nomes COLOCAR um arquivo ou outra entidade onde o servidor deve armazenar dados do corpo da mensagem. PUT pode ser útil para a transferência de arquivos, onde os nomes de pedido de linha do arquivo no servidor onde o servidor deve armazenar os dados recebidos. HTTP 0,9 suporta apenas o método GET, e da linha de pedido inclui apenas o pedido ea URL, e não o HTTP versão. Se nenhuma versão do HTTP é especificado, o servidor deverá assumir a sua versão 0.9. Métodos especificados nas solicitações devem ser maiúsculas e seguido por um espaço.

um artigo submetido por Daniel R.


Isenção de responsabilidade:O nosso site não se responsabiliza pelo conteúdo deste artigo. Webarticles é uma fonte de informação livre.
Importante: Este artigo "Para servir a sua página Web do módulo Coelho usa funções HTTP" foi traduzida por um software automático. Nós sentimos muito por quaisquer erros de ortografia que pode ter ocorrido. Obrigado pela sua compreensão.


Online: 271 users browsing the articles directory