Qual é a diferença de nível de pacote entre um XMLHttpRequest e uma solicitação HTTP regular?

StackOverflow https://stackoverflow.com/questions/1214526

  •  06-07-2019
  •  | 
  •  

Pergunta

Eu estou querendo saber: se eu fosse aa router, pacote inspector, firewall ou outro dispositivo farejador de pacotes (que eu estou feliz que eu não sou) eu seria capaz de dizer a diferença entre um pedido e HTTP tradicional um XMLHttpRequest? Menos teoricamente, é possível que alguns ISP ou (digamos) provedor de dados de telefone celular poderia restringir XMLHttpRequest tráfego sem interromper o serviço HTTP?

Graças.

Foi útil?

Solução

Não há nada no nível do pacote para distingui-los, porque e XMLHttpRequest é uma solicitação HTTP. O bit XML refere-se ao fato de que, se a resposta é de um xml Content-Type, em seguida, o método responseXML irá retornar um objeto DOM.

Outras dicas

Para o melhor de meu conhecimento, não há nenhuma diferença fundamental -. Então, do ponto de vista de um roteador etc. você não pode dizer em geral

Mas eu acredito que a maioria dos kits de ferramentas JavaScript populares irá adicionar um cabeçalho HTTP aos seus XMLHttpRequests para identificá-los como tal. I esquecer o nome, embora ...

Editar : Aqui de um exemplo (top Google bateu para "cabeçalho jquery xmlhttprequest", sem aspas), que mostra que jQuery aparentemente define X-Requested-With para "XMLHttpRequest".

no pacote, rede, níveis de sessão: Não.

a nível da aplicação, ou seja, com um dispositivo específico do HTTP como um proxy de filtragem, talvez.

i iria verificar os cabeçalhos de solicitação HTTP. eles podem (apenas pode ) têm algumas diferenças. mas eu tenho certeza que qualquer diferença haveria específica navegador muito, e muito provavelmente o código JavaScript direito poderia inserir os cabeçalhos apropriados para torná-lo totalmente indistinguíveis.

Em suma: verificar os cabeçalhos HTTP; mas não espere que ele seja geral, muito menos útil.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top