用Node.js来开发后台服务
2017-06-19 10:38
519 查看
今天介绍怎么样用JSONStore开发一个云端的后台服务,并快速的与客户端对接。
1.创建应用
首先去JSONStore注册用户,并创建一个APP,
2.建立表结构
建立catalog和product两张表,分别代表分类表和产品表。如下:
3.添加数据
到数据页面分别给两张表增加几条数据
catalog表:
product表
4.建立API
到API页面编写API。
4.1 查询所有产品并关联分类
新建一个/products 的API,参数如下:
路径:/products
名称:所有产品
方法:GET
跨域:开启
4.2 查询所有分类
新建一个/catalogs 的API,参数如下:
路径:/catalogs
名称:所有分类
方法:GET
跨域:开启
4.3 增加分类
到数据页面给分类表生成RESTAPI,如下:
5.编写代码
/products 查询所有产品
/catalogs 查询所有分类
/catalog 增加分类
由系统生成,无需编写。
5.测试
到各个API的测试页面,对API进行测试,如下:
6.客户端调用
客户端调用时,用各个语言的HTTP客户端调用返回JSON数据即可。这里以Javascript为例。
注意:如果在HTML页面中用AJAX调用需要到设置页面中开启跨域。
参考 https://docs.jsonstore.cn/reference/invoke.html
6.1 获取AppKey 和 Secret
进入到设置页面得到AppKey 和 Secret。
6.2 在页面用AJAX调用
6.3 运行
可以看到控制台已打印出产品的数据。
1.创建应用
首先去JSONStore注册用户,并创建一个APP,
2.建立表结构
建立catalog和product两张表,分别代表分类表和产品表。如下:
3.添加数据
到数据页面分别给两张表增加几条数据
catalog表:
product表
4.建立API
到API页面编写API。
4.1 查询所有产品并关联分类
新建一个/products 的API,参数如下:
路径:/products
名称:所有产品
方法:GET
跨域:开启
4.2 查询所有分类
新建一个/catalogs 的API,参数如下:
路径:/catalogs
名称:所有分类
方法:GET
跨域:开启
4.3 增加分类
到数据页面给分类表生成RESTAPI,如下:
5.编写代码
/products 查询所有产品
var conn = modules.conn; var logger = modules.logger; conn('product') .select(["product.name", "product.price", "product.count", "catalog.name as catalog"]) .leftJoin('catalog', 'catalog.id', 'product.catalog') .then(function(data){ res.send(data); }) .catch(function (err) { logger.error(err.stack); res.status(500).send(err.message); })
/catalogs 查询所有分类
var conn = modules.conn; var logger = modules.logger; conn('catalog') .select() .then(function(data){ res.send(data); }) .catch(function (err) { logger.error(err.stack); res.status(500).send(err.message); })
/catalog 增加分类
由系统生成,无需编写。
5.测试
到各个API的测试页面,对API进行测试,如下:
6.客户端调用
客户端调用时,用各个语言的HTTP客户端调用返回JSON数据即可。这里以Javascript为例。
注意:如果在HTML页面中用AJAX调用需要到设置页面中开启跨域。
参考 https://docs.jsonstore.cn/reference/invoke.html
6.1 获取AppKey 和 Secret
进入到设置页面得到AppKey 和 Secret。
6.2 在页面用AJAX调用
//获取指定位数的随机字符串(包含小写字母、大写字母、数字,0<length) function randomString(length) { //随机字符串的随机字符库 var KeyString = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"; var sb = ""; var len = KeyString.length; for (var i = 0; i < length; i++) { sb += KeyString.charAt(Math.round(Math.random() * (len - 1))); } return sb; } var appKey = "Pv6fH4AC3yCTrVye5lElMIJj0rEl0K"; var secret = "dUG6TRvo4p2Pq2Yv5bdSXuxMh6W1uW"; var nonce = randomString(10); var curTime = new Date().getTime(); var checkSum = hex_sha1(secret + nonce + curTime); //SHA1算法加密 $.ajax({ type: "GET", url: "https://api.jsonstore.cn/api/aaaa/products", //API调用地址 headers : { "Content-Type" : "application/json", "App-Key" : appKey, "Nonce" : nonce, "Cur-Time" : curTime, "Check-Sum" : checkSum, }, success : function(data){ console.log(data); }, error : function (err){ console.log(err) } })
6.3 运行
可以看到控制台已打印出产品的数据。
相关文章推荐
- Node.js开发Web后台服务
- 使用Node.js开发一个在线聊天应用——编写后台
- Node.js开发入门(九)——使用AngularJS内置服务
- 微信小程序,腾讯云node环境后台koa2开发框架(本地调试、接口、静态文件服务、文件长传服务)
- 利用Bluemix and Bluemix DevOps 服务开发 Node.js应用
- Node.js实现WEB 服务开发
- windows下利用Node.js开发后台服务器(三)
- Node.js搭建小程序后台服务
- Node.js开发入门—使用AngularJS内置服务
- node.js适合游戏后台开发吗?
- 一键搭建微信小程序开发环境 及demo运行(腾讯云上一键搭建node.js服务器环境,PHP,Java,.NET服务类似)
- 【后台】开发框架之Node.js
- 微信后台开发第一步:nodeJS+express接入微信后台详细教程
- 微信后台开发第一步:nodeJS+express接入微信后台详细教程
- windows下利用Node.js开发后台服务器(二)
- Node.js网易云信短信服务开发
- windows下利用Node.js开发后台服务器(一)
- Node.js开发web后台入门
- node.js适合游戏后台开发吗?
- 利用OpenShift托管Node.js Web服务进行微信公众号开发