Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/41.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 构建现代web应用程序_Html_Html5 History - Fatal编程技术网

Html 构建现代web应用程序

Html 构建现代web应用程序,html,html5-history,Html,Html5 History,我正在重新设计我上个世纪的应用程序,它运行得非常好,请注意,有机会重新开始,我调查了几个方面。这个问题是关于既可以使用现代HTML5历史功能也可以不使用HTML5历史功能的体系结构 假设我有以下URI结构bloggish应用程序,带有嵌入式gewgaws http://example.com --> alias for /latest http://example.com/latest --> alias for /Resource2 http://example.com/Resou

我正在重新设计我上个世纪的应用程序,它运行得非常好,请注意,有机会重新开始,我调查了几个方面。这个问题是关于既可以使用现代HTML5历史功能也可以不使用HTML5历史功能的体系结构

假设我有以下URI结构bloggish应用程序,带有嵌入式gewgaws

http://example.com --> alias for /latest
http://example.com/latest --> alias for /Resource2
http://example.com/Resource1
http://example.com/Resource2
http://example.com/Resource2#chart
http://example.com/Resource2#chart?a=life's-answer&b=42
http://example.com/about
我希望屏幕上可以看到的每个资源或方面都可以通过URI访问。例如,about文本被加载到基本模板imagine handlebarsjs中,当用户单击about链接时,它会显示在一个小弹出窗口中。但是,如果直接在浏览器中加载,用户也应该能够看到相同的关于文本,例如,如果http://example.com/about 通过电子邮件发送给某人,该人点击了它

同样的事情http://example.com/Resource2chart?a=life's-answer&b=42,它可能使用查询字符串中的a和b值显示嵌入在Resource2中的可自定义图表的特定视图

这意味着要么我应该有一种机制,不管请求什么资源,首先加载一个空模板,然后进行Ajax调用来检索请求的资源,甚至是它的定制状态。然后我应该使用历史API的魔力来更改URI

或者,我应该拥有每个资源的静态服务器版本,以防直接请求。事实上,无论如何,我都应该有每个资源的服务器版本,以防一些luddite想要在没有JavaScript的情况下使用应用程序

两个问题-

对于如何处理上述问题,是否有一些一般性建议? 是否有一个或两个JavaScript MV*框架比其他框架做得更好

附言:虽然我非常喜欢meterojs的想法以及它试图实现的目标,但我现在还没有准备好让我的马车停在nodejs上。我需要在服务器端做很多事情,以便更好地使用更传统的语言,这种语言已经存在了足够长的时间,可以在其周围建立一个完整的生态系统