[请益] 一些基本观念的厘清

楼主: pracinverse (改)   2016-08-07 00:09:00
想厘清一些web application的观念
1. 一个connection是走HTTP 1.0 or 1.1 or 2.0是怎么决定的??
是透过web server的设定决定的吗?
2. 一个browser开了2个tab (tab A和tab B),2个tab都连到同一个server
请问server怎么知道reponse要回给tab A还是tab B??
是因为这2个tab都有自己的port,所以server可以区别要回给哪个tab吗??
3. 在server-side的2个pages之间传递资料,可以用get, post, session...
请问什么情况下要用get比较好??
请问什么情况下要用post比较好??
请问什么情况下要用session比较好??
4. 在server-side有多台application servers时,
最好是把session data放在cookie里面,
所以在这种情况下,user登录后,除非user清除browser的cookie(或user自己按登出)
否则user就会永远处于登录状态,没有所谓session timeout的问题对吧???
请大家不吝指教,谢谢
作者: hungys (hungys)   2016-08-07 00:52:00
1. client 要指定版本,但也要看 server 支不支援,好像也可以加 Upgrade header 或透过 TLS 的 negotiation protocol extension 让 server 决定要不要升级连线成 2.02. TCP connection 不同就可以区别啦,另外一般同个 hostname 应该是归在同一个 connection pool,同时最多五到六条连线 (依浏览器不同)说错请帮忙指正QQ另外 2 严格来说要用 tab 来看的话那就是 browser 开发者自己要处理 tab 跟 connection pool 的对应关系吧,应该不是一个 tab 一个 connection / port 的概念。
作者: tommady (tommady)   2016-08-07 10:35:00
小弟浅见。三,get用于不必传参数反之post用于传参数的取得,session用在不必分布式的取得。四,依小弟经验,基本上是的,但如果server重开又没存下session的话,会有错误。三的取得字眼改传递,四的session是server side
作者: ripple0129 (perry tsai)   2016-08-07 10:44:00
用参数区分有点笼统,毕竟Get也可以带参数。Get Post其实可以参考Restful的设计风格关于语义部分。Http request response走一轮就消灭了,资料时效性于该次登入到登出之前都该保存的用session。
作者: Masakiad (Masaki)   2016-08-07 12:20:00
关于4. LB + SSO 可以考虑jwt方案其他问题如其他版友都回答了,要个案厘清。需求跟实作都各自不同
作者: panda04056 (圆仔cross56)   2016-08-07 15:36:00
四:session也可设定存活时间,超过时间还是要从新登入

Links booklink

Contact Us: admin [ a t ] ucptt.com