适合前端Vue开发童鞋的跨平台Weex的使用详解(2)

(1)安装 weex-debugger 插件,安装过程和安装weex-run插件类似。
(2)ctrl + shift + p 弹出命令输入框,如下图所示输入:weex debug,然后网页会出现第 2 张截图的二维码:

适合前端Vue开发童鞋的跨平台Weex的使用详解


适合前端Vue开发童鞋的跨平台Weex的使用详解


(3)用手机的 Weex Playground App 的二维码进行扫描,出现以下调试页面(一定一定要注意,手机连的 WiFi 和 你开发本地网络在同一局域网)。

适合前端Vue开发童鞋的跨平台Weex的使用详解


(4)再用手机的 Weex Playground App 的二维码扫描 Weex 应用的二维码,调试页面就会变成对应的 Weex 应用的调试页面,如下图所示。

适合前端Vue开发童鞋的跨平台Weex的使用详解

四、Weex 项目实战

4.1、项目目录路径

下面通过一个Weex 项目来说明Weex的一些基础,项目目录结构如下:

适合前端Vue开发童鞋的跨平台Weex的使用详解

4.2、功能模块设计

考虑到更好的体验 Weex 和 H5 在开发效率、功能性能、用户体验等方面的差异性,我们对功能模块进行精心设计,主要基于我们现有的实际项目的业务进行开发,并结合移动端特有的特性。
相关的模块功能设计如下图所示,其中红色标注部分表示,受限于开发资源、Weex 生态方面原因,我们暂时还没完成全部功能的开发。

适合前端Vue开发童鞋的跨平台Weex的使用详解

4.3、功能界面展示

下面是Weex示例项目截取一些功能界面展示,如下图:

适合前端Vue开发童鞋的跨平台Weex的使用详解

4.4、重要功能介绍

除了一些常规的功能开发外,以下介绍的几个功能在 Weex 官网中并没有详细介绍或者根本没有介绍,我们在开发过程中踩了不少坑,因此将踩坑经验进行汇总,帮助大家避免踩坑:

(1)登录 token 认证
(2)图片选择/上传功能
(3)websocket 功能实现
(4)手机物理键返回上一级功能
(5)Android 如何显示本地图片

4.4.1、token 认证功能

(1)token 认证介绍

在 Web 领域基于 token 的身份验证随处可见。在大多数使用 Web API 的互联网公司中,tokens 是多用户下处理认证的最佳方式。token 具有以下特性:

无状态、可扩展

支持移动设备

跨程序调用

安全

基于 token 的身份验证的过程如下:

用户通过用户名和密码发送请求。

服务端程序验证。

程序返回一个签名的 token 给客户端。

客户端储存 token,并且每次用于每次发送请求。

服务端验证 token 并返回数据。

(2)weex 和 express 之间实现 token 认证

express 服务端主要使用 express-jwt 插件,express-jwt 是 nodejs 的一个中间件,内部对 jsonwebtoken 进行封装使用。express-jwt 会验证指定 http 请求的 jsonwebtoken 的有效性,如果有效就将 jsonwebtoken 的值设置到 req.user 里面,然后跳转到相应的 router。

以下是服务端 express 的代码逻辑,代码如下:

var expressJWT = require('express-jwt'); // token 设置 app.use(expressJWT({ secret: CONSTANT.SECRET_KEY }).unless({ // 除了以下配置的地址,其他的URL都需要验证 path: ['/getToken', /^\/public\/.*/, /^\/user_disk\/.*/] })); // 登录时,需要进行用户密码认证,相应路由跳转到下面一步 app.use('/getToken', tokenRouter); // 当用户密码正确时,我们进行 token 设置 data: { token: jsonWebToken.sign({ uid: obj.uid }, CONSTANT.SECRET_KEY, { expiresIn: 60 * 60 * 1 }), }

对应的Weex的代码如下:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/ce5cd2ee401f214ba90fb2cd4df861f7.html