Web Desktop App(修订版)

2024-01-18 00:48
文章标签 app web desktop 修订版

本文主要是介绍Web Desktop App(修订版),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

年前忽然想到一种桌面应用的模式——用Web方式实现。

从表现方式上说,类似.net的XAML,但是基于现有技术实现,并且可以不受平台限制。比如可以用这样的方式实现一个资源管理器这样的东东。甚至可以按这种模式开发出一种类似于DesktopWebOS这样的东东,挂在不同的OS平台上。

基本的结构是这样:

用TurboGears(或者简单一点就直接用CherryPy)一类的技术实现一个WebServer,把本地 应用的功能全都做到这个WebServer中,前端用Browser通过Ajax实现交互。因为CherryPy的实现是一个单独的应用程序,并且自带 HttpServer功能,等于就是用浏览器操纵一个非GUI的后端应用程序。

至于安全性的问题也很简单,因为这个Server是以当前用 户身份运行,与一般的用户程序一样——使用方法就像TurboGears本身的Toolbox功能那样,运行应用程序时启动WebServer并自动打开 对应的链接。访问安全性的问题可以通过限制为本机访问的方式实现,如果想要提供远程访问的功能,可以用Apache做一个https代理——当然,服务端 的程序的运行权限同样可以指定为相应用户身份运行(Windows可以做成服务应用,并以指定用户身份运行——当然对于Windows来说,这种安全性措 施没有什么必要,偷笑)。

剩下的问题就是:开发难度比一般的应用程序大不少,特别是Ajax部分。

补充:以上纯属瞎想,其实 我现在对Ajax已经有点不满意了,因为Over ajax的情况已经越来越多。虽然像www.netvibes.com的ajax效果超级酷,但是过于复杂的JS代码使得程序的性能和稳定性都很成问题。 还有,我之所以不用抓虾,就是因为我订阅的RSS比较多,会让它的JS程序在Firefox下近乎死机。

或者需要有比Ajax更好的通用方案。

 


这篇关于Web Desktop App(修订版)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/617672

相关文章

Spring常见错误之Web嵌套对象校验失效解决办法

《Spring常见错误之Web嵌套对象校验失效解决办法》:本文主要介绍Spring常见错误之Web嵌套对象校验失效解决的相关资料,通过在Phone对象上添加@Valid注解,问题得以解决,需要的朋... 目录问题复现案例解析问题修正总结  问题复现当开发一个学籍管理系统时,我们会提供了一个 API 接口去

macOS怎么轻松更换App图标? Mac电脑图标更换指南

《macOS怎么轻松更换App图标?Mac电脑图标更换指南》想要给你的Mac电脑按照自己的喜好来更换App图标?其实非常简单,只需要两步就能搞定,下面我来详细讲解一下... 虽然 MACOS 的个性化定制选项已经「缩水」,不如早期版本那么丰富,www.chinasem.cn但我们仍然可以按照自己的喜好来更换

使用IntelliJ IDEA创建简单的Java Web项目完整步骤

《使用IntelliJIDEA创建简单的JavaWeb项目完整步骤》:本文主要介绍如何使用IntelliJIDEA创建一个简单的JavaWeb项目,实现登录、注册和查看用户列表功能,使用Se... 目录前置准备项目功能实现步骤1. 创建项目2. 配置 Tomcat3. 项目文件结构4. 创建数据库和表5.

React实现原生APP切换效果

《React实现原生APP切换效果》最近需要使用Hybrid的方式开发一个APP,交互和原生APP相似并且需要IM通信,本文给大家介绍了使用React实现原生APP切换效果,文中通过代码示例讲解的非常... 目录背景需求概览技术栈实现步骤根据 react-router-dom 文档配置好路由添加过渡动画使用

手把手教你idea中创建一个javaweb(webapp)项目详细图文教程

《手把手教你idea中创建一个javaweb(webapp)项目详细图文教程》:本文主要介绍如何使用IntelliJIDEA创建一个Maven项目,并配置Tomcat服务器进行运行,过程包括创建... 1.启动idea2.创建项目模板点击项目-新建项目-选择maven,显示如下页面输入项目名称,选择

Java Web指的是什么

Java Web指的是使用Java技术进行Web开发的一种方式。Java在Web开发领域有着广泛的应用,主要通过Java EE(Enterprise Edition)平台来实现。  主要特点和技术包括: 1. Servlets和JSP:     Servlets 是Java编写的服务器端程序,用于处理客户端请求和生成动态网页内容。     JSP(JavaServer Pages)

BUUCTF靶场[web][极客大挑战 2019]Http、[HCTF 2018]admin

目录   [web][极客大挑战 2019]Http 考点:Referer协议、UA协议、X-Forwarded-For协议 [web][HCTF 2018]admin 考点:弱密码字典爆破 四种方法:   [web][极客大挑战 2019]Http 考点:Referer协议、UA协议、X-Forwarded-For协议 访问环境 老规矩,我们先查看源代码

EasyPlayer.js网页H5 Web js播放器能力合集

最近遇到一个需求,要求做一款播放器,发现能力上跟EasyPlayer.js基本一致,满足要求: 需求 功性能 分类 需求描述 功能 预览 分屏模式 单分屏(单屏/全屏) 多分屏(2*2) 多分屏(3*3) 多分屏(4*4) 播放控制 播放(单个或全部) 暂停(暂停时展示最后一帧画面) 停止(单个或全部) 声音控制(开关/音量调节) 主辅码流切换 辅助功能 屏

9.8javaweb项目总结

1.主界面用户信息显示 登录成功后,将用户信息存储在记录在 localStorage中,然后进入界面之前通过js来渲染主界面 存储用户信息 将用户信息渲染在主界面上,并且头像设置跳转,到个人资料界面 这里数据库中还没有设置相关信息 2.模糊查找 检测输入框是否有变更,有的话调用方法,进行查找 发送检测请求,然后接收的时候设置最多显示四个类似的搜索结果

JavaWeb【day09】--(Mybatis)

1. Mybatis基础操作 学习完mybatis入门后,我们继续学习mybatis基础操作。 1.1 需求 需求说明: 根据资料中提供的《tlias智能学习辅助系统》页面原型及需求,完成员工管理的需求开发。 通过分析以上的页面原型和需求,我们确定了功能列表: 查询 根据主键ID查询 条件查询 新增 更新 删除 根据主键ID删除 根据主键ID批量删除