java 板


LINE

话先说在前头, 我对写网页不太在行, 所以这篇文章可能会存在一些严重的错误, 还请各位多多包涵。 --- 这篇文章主要是想问, 一些在网页上常见的架构如何在 GWT 上实现, 像是 login page, 还有让每个页面都有共同的 header, bottom。 (以前听老师说过这好像是一个 pattern? 但名字我忘了) 我照着官方的 tutorial 做完以後, 试着想要写一个 login page, 却发现非常的.... 呃~ 棘手 XD 我甚至不知道我应该用纯 GWT 去写, 还是写一个 JSP 做登入,登入完成後再转给 GWT module。 如果用纯 GWT 去写, 跳转页面的部份又改如何做, 应该要用单一 module? 还是多个 module? 直到後来我看了一些讨论, ( http://tinyurl.com/yd5eud6 ) "GWT highly recommends using a single module." "Typically, there is only a single HTML page, and different "screens" are manipulated on the client side." OK, 所以我应该用 GWT 做一个登入的 "screen", 然後在 EntryPoint 做一个 RPC 呼叫, 去判断使用者的 cookie 是否过期, 如果过期了就显示 login screen, 没过期就显示登入後的画面。 於是我写了一个类似这样的东西: http://snipt.net/javagner It's work! 但是,我如何知道这样是对的? 事实上,不管是一个 module、两个 module,还是渗了 JSP, 我认为都可以做出相同的功能, 但哪一个方式是我真正应该做的呢? 这是我发这一篇文的主要目的。 接下来就就真的要提出疑问了: 1. 用上面所提的登入方式, 实际运作起来会是: (1) client 端下载了 EntryPoint (2) 利用 AJAX 检查是否有登入 (3) Server 端回传登入结果 (4) Client 端显示对应页面 跟其他的网页语言直接在 Server 端检查完後, 便直接将对应画面输出给 Client 端的作法不同。 另外,据我刚才利用 firebug 观察的结果, 步骤 (3) 传回来的结果并没有包含 步骤 (4) 显示的页面, 也就是说,我在步骤 (1) 时, 已经抓取了登入成功和失败时,欲显示的页面了, 这样,会不会有安全性的问题? ps. 我个人是觉得在写法正确下,不至於有问题,但还是提出来讨论看看 :P 2. 上面的做法只能在进入 EntryPoint 时判断, 那 Session/Cookie 过期时怎麽办? 这边我还没有实际做, 不过我认为应该是在呼叫 RPC 时, 由 Server 端去检查 Session, 如果不合格就丢出 Exception。 Client 端收到 Exception 後就将画面导到 login page. 3. 继续接续上面的问题, Client 端收到 Exception 时, 可能只是一个画面上的小 Panel 在处理, 我要如何才能把整个画面切换到 login screen 呢? (RootPanel 通常会在 EntryPoint 手上) 我承认这是一个 Application 常见的简单问题啦 XD 但是毕竟现在处理的是网页, 会不会有其他更适合的 pattern 能够解决这个问题呢? --- 如果我的这篇文章没有什麽严重的误解的话, 我想,是不是可以讨论看看一些在其他语言上常用的架构,该如何用 GWT 实现。 --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.132.160.117 ※ 编辑: tkcn 来自: 220.132.160.117 (12/13 20:17)
1F:推 ken915007:被m起来了!!版主~太少了…之前有用的也可以m起来 12/13 20:37
3F:→ qrtt1:http://www.opensymphony.com/sitemesh/ 12/13 21:12
4F:→ tkcn:感谢楼上 :p 12/13 21:37







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:iOS站内搜寻

TOP