1. URL: Localizador uniforme de recursos
2. A forma do URL:
<protocol>: // [<usuário>: <senha>] @ <host>: <port> / <caminho> [: <params>]? <query> # <fragment>
protocolo: protocolo de acesso, como: http, https, ftp
host: nome do host, às vezes ip, às vezes nome de domínio, por exemplo: 192.168.10.12, www.baidu.com.
port: Port, a porta do host ao acessar. A porta do protocolo http é 80, o que pode ser omitido.
path: Podemos encontrar o host através do host: port, mas existem muitos arquivos no host e você pode localizar arquivos específicos através do caminho. Por exemplo: https://baike.baidu.com/item/software testing / 327953
params: passa parâmetros para o servidor, geralmente raros
query: query string, você precisa consultar o conteúdo do servidor, insira-o aqui. Por exemplo: www.baidu.com/s?ie=utf-8&f=8&rsv_bp=1&rsv_idx=1&tn=baidu&wd=%E8%BD%AF%E4%BB%B6%E6%B5%8B%E8%AF%95
Fragmento: Fragmento, a página da web pode ser dividida em diferentes fragmentos
Exemplos:
( 1) estrela Sina:
http://slide.ent.sina.com.cn/star/slide_4_704_336821.html#p=1
( 2) pesquisa Baidu:
3. protocolo http:
HTTP (Hyper Text Transfer Protocol, Hypertext Transfer Protocol): é um protocolo de camada de aplicativo sem estado, baseado em modo de solicitação e resposta, conectado por TCP, porta padrão: 80.
4. Fluxo de trabalho HTTP:
( 1) O cliente e o servidor estabelecem uma conexão TCP.
( 2) O cliente envia uma solicitação ao servidor.
( 3) O servidor recebe a solicitação do cliente e retorna o conteúdo da resposta de acordo com a solicitação.
( 4) O cliente recebe o conteúdo da resposta do servidor e o conteúdo analisado é exibido no front-end; depois, o cliente se desconecta do servidor.
5. Recursos do HTTP:
( 1) Suporte ao modo cliente / servidor.
( 2) Simples e rápido: quando um cliente solicita um serviço de um servidor, apenas o método e o caminho da solicitação precisam ser transmitidos.
( 3) Flexível: o HTTP permite a transmissão de qualquer tipo de objeto de dados.
( 4) Não salve o estado: se as informações anteriores forem necessárias para o processamento subsequente, elas deverão ser retransmitidas.
Desvantagens: pode levar a um aumento na quantidade de dados transferidos por conexão.
b) Vantagens: O servidor não precisa de informações anteriores para responder mais rapidamente, reduzindo o consumo da CPU e de memória do servidor .
Introdução aos cookies e ao mecanismo da sessão: O cookie registra informações no cliente para determinar a identidade do usuário e a Session registra informações no servidor para determinar a identidade do usuário.
( 5) Sem conexão: apenas uma solicitação é processada por conexão.Depois que o servidor processa a solicitação e recebe a resposta, ele se desconecta.
Desvantagens: A conexão TCP deve ser estabelecida / desconectada para cada solicitação e a sobrecarga da comunicação aumenta.
b) Vantagens: usar este método pode economizar tempo de transmissão.
c. Introdução subsequente de conexão persistente (HTTP keep-alive): Em uma conexão TCP, vários dados podem ser enviados continuamente sem desconectar, reduzindo o número de estabelecimento de conexão tcp; o servidor geral definirá o tempo limite de keep-alive e o número máximo de conexões .
tempo limite keep-alive: feche a conexão mais que este tempo após a transmissão
Número máximo de conexões: após atingir o número máximo de conexões, uma nova solicitação inicia uma conexão e a conexão anterior será fechada se o tempo limite não for atingido
6. Desvantagens do HTTP:
( 1) Roubado: a comunicação HTTP usa texto sem formatação, sem nenhuma medida de criptografia durante a transmissão, podendo ser escutada.
( 2) Camuflagem de encontro: Durante o processo de transmissão, sem verificar a identidade da parte que se comunica, é possível encontrar camuflagem no meio
( 3) Violado: o HTTP apenas analisa a mensagem e não a verifica completamente, portanto a integridade da mensagem não pode ser verificada e pode ser violada.