首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >对HTTP协议感到困惑

对HTTP协议感到困惑
EN

Stack Overflow用户
提问于 2011-10-09 19:25:29
回答 3查看 1.1K关注 0票数 2

我对HTTP协议有点困惑,因为据我所知,HTTP是用来传递网页和主要在web服务器和浏览器之间发送消息的。但似乎HTTP在很多应用程序中都被使用了,这些应用程序确实使用互联网进行通信,但不是web应用程序(“使用web浏览器作为客户端的应用程序”)。

我之所以这样问,是因为我开始开发一个iPhone应用程序(一种导航应用程序),我需要在iPhone客户端和我的服务器之间发送消息。现在人们一直告诉我要使用HTTP协议,但这真的是可行的方法吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-06-16 01:57:12

您的问题是正确的,如果我可以重申一遍,为什么我们对每个服务器-客户端通信都使用HTTP,而它通常用于浏览器-web服务器使用情况,并且与直接TCP通信相比效率较低。我的理由如下:

  • HTTP协议非常简单,就像许多技术上的简单解决方案一样,即使复杂的解决方案效率更高(除非有很大的差距),它也比复杂的解决方案更复杂。
  • HTTP协议是无状态的,这使得通过添加更多的机器来水平扩展和通过简单的负载平衡技术(如循环调度)来平衡负载变得更加简单。
  • 很容易找到一个合理且免费的HTTP服务器来让你的应用程序快速启动和运行,而不是实现你自己的协议、服务器并将你的注意力从你想要解决的真正问题上移开。
  • 喜欢许多各方使用的任何简单的技术,随着时间的推移,它会变得更好,并且使用诸如保持连接、分块传输、流水线等现代功能,您可以克服连接开销的一些缺点。
票数 1
EN

Stack Overflow用户

发布于 2011-10-09 19:39:22

是的,就是这样。你还想怎么做呢?

代码语言:javascript
复制
Web Server <-------HTTP-------> Client

客户端可以是浏览器、手机、xbox。在服务器请求的接收端的任何东西都是客户端。

票数 1
EN

Stack Overflow用户

发布于 2013-06-02 13:46:12

一致认为从SOAP迁移到REST和查询是一件好事。我们目前正在实现一个系统,它将使用HTTP作为双向传输机制。上传到服务器的响应是一个标准的HTTP响应,比如200 = success,没有正文。对查询的响应是一个以答案为主体的ASCII文本页面。然后,我们只需将ASCII转换回二进制以使用数据。这种方法的优点是,您只需提供正确的URL和参数,您就可以处理所有事情。除非您的协议栈知道如何格式化post和get请求,否则您需要自己进行格式化。虽然这很单调乏味,但在W3C Protocols中有很好的文档记录,但是必须自己经历所有这些都有些单调乏味。因此,如果你不得不这样做,那么我建议你买一个eBook来帮助你理清细节。下面是一些例子:HTTP

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7703158

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档