Ho ricevuto questa domanda in una delle interviste che ho fatto. Ho iniziato spiegando che è come un insieme di regole da seguire mentre si spostano le risorse, ma non mi sentivo convinto. C'è qualche altra analogia o prendi questa domanda?
Ho ricevuto questa domanda in una delle interviste che ho fatto. Ho iniziato spiegando che è come un insieme di regole da seguire mentre si spostano le risorse, ma non mi sentivo convinto. C'è qualche altra analogia o prendi questa domanda?
Un'analogia ragionevole potrebbe essere quella di parlare con qualcuno al telefono. Dopo tutto il protocollo TCP / IP è molto simile alla telefonata. Quindi qualcosa sulla falsariga di:
HTTP is like a language that computers on the internet use to talk to each other.
If you want something from somebody on the other end of the world, you phone them up and ask them and you have to ask them in a language you both understand. Requesting a web page from the internet works similar—your computer calls (it often even uses the same wires as phone) one in the company that made the page as asks it for the content—and HTTP is the language both computers understand.
it is like a set of rules that should be followed while moving resources around
Sebbene non del tutto impreciso, mi sembra più vicino una descrizione di REST.
Descriverei HTTP come protocollo di comunicazione, originariamente progettato per Hypertext (da cui il nome) ma esteso nel tempo per includere qualsiasi forma di file (dove il tipo è definito nell'intestazione).
Vorrei anche spiegare che si tratta di una comunicazione richiesta / risposta, piuttosto che completamente bidirezionale, e che il verbo nell'intestazione è inteso a descrivere un'azione da eseguire, di solito su una risorsa specificata.
Per un profano lo spiegherei come:
A way of requesting and communicating back the information on the Internet(World Wide Web).
Non so se ulteriori dettagli devono essere forniti se non richiesto.
Devo farlo in modo equo a causa della natura dell'attività per cui lavoro. Ci sono già alcune buone spiegazioni brevi elencate. Ma la bellezza di HTTP è davvero comprensibile. Quindi, quando ho bisogno di ottenere più in profondità rispetto alle risposte brevi sopra, in genere accendo un browser, chiedo all'utente un sito preferito, quindi accendi Fiddler o Firebug o qualsiasi altro http il debugger è a portata di mano. Quindi esaminiamo le richieste e decostruiamo HTTP mentre è in azione.