restful用法
http://www.cnblogs.com/wen-wen/p/6149847.html
一.创建services文件夹
services文件夹下
1.BaseService.js
class Service{
constructor(){
console.log('service的constructor');
}
add(obj, name,callback){
console.log('service的add');
}
delete(){
console.log('service的delete');
}
}
exports.service = Service;
2.UserService.js
var BaseService = require('./BaseService').service;
class UserService extends BaseService{
constructor(){
super();
}
add(obj, name,callback){
console.log(obj);
console.log(name);
console.log(callback);
console.log('UserService的add');
callback({say:'收到'});
}
delete(){
console.log('UserService的delete');
}
}
exports.service = UserService;
3.services.js
exports.userService = require('./UserService').service;
二:router路由中创建api.js
var express = require('express');
var router = express.Router();
var Services = require('../services/services');
router.get('/restful',function(req,res,next){
res.render('restful');
})
router.get('/:name?/:method?/:par?',function(req,res,next){
var name = req.params.name || 'empty';
var method = req.params.method || 'empty';
var par = req.params.par || '';
console.log(name+'Service');
var service = new Services[name+'Service']();
var obj = req.query || {};
obj.par = par;
if(!Services[name+'Service']){
service = new Services.emptyService();
}
service[method](obj,name,function(result){
//res.json(result);
res.json({id:1,name:'张三'});
});
return;
});
module.exports = router;
三:views/restful.ejs中
<html>
<head>
<script src="/javascripts/jquery-2.1.4.min.js"></script>
<script>
function dian(){
$.get('/api/user/add',function(res){
alert(res.name);
});
}
</script>
</head>
<body>
<input type='button' value='点' onclick='dian()'/>
</body>
</html>
restful用法的更多相关文章
- day01(RESTful Web Service、SVN)
今日大纲 搭建SSM环境 基于SSM环境实现用户管理系统 学习RESTful Web Service 学习SVN 统一开发环境 JDK1.7 32? 64? -- 64 Eclipse 使用4.4.1 ...
- Restful设计思想
1.REST的架构设计 代表性状态传输(Representational State Transfer,REST)在Web领域已经得到了广泛的接受,是基于SOAP和Web服务描述语言(Web Serv ...
- Rest和Restful & http
Rest :Representational State Transfer 表述性状态转移 Restful: Rest+ful形容词,遵循Rest原则的应用程序或设计 Rest原则: 1. 网络上的所 ...
- 【Restful】三分钟彻底了解Restful最佳实践
REST是英文representational state transfer(表象性状态转变)或者表述性状态转移;Rest是web服务的一种架构风格;使用HTTP,URI,XML,JSON,HTML等 ...
- 【其他】【Restful】【1】简单了解Restful概念
内容: REST是一种设计风格,不是一种标准,是一种思想.符合REST原则的架构方式即可称为RESTful. 在Restful之前的操作:http://127.0.0.1/user/query/1 G ...
- RestFul风格接口示例
REST是英文representational state transfer(表象性状态转变)或者表述性状态转移;Rest是web服务的一种架构风格;使用HTTP,URI,XML,JSON,HTML等 ...
- Restful对于URL的简化
REST是英文representational state transfer(表象性状态转变)或者表述性状态转移,它是web服务的一种架构风格.使用HTTP,URI,XML,JSON,HTML等广泛流 ...
- RESTful源码学习笔记之RPC和Restful深入理解
以下资料搜集自网络 0x00 RPC RPC 即远程过程调用(Remote Procedure Call Protocol,简称RPC),像调用本地服务(方法)一样调用服务器的服务(方法).通常的实现 ...
- 【RESTful风格】软件接口设计中RESTful风格
REST = Representational State Transfer 表述性状态转移,是一种软甲接口设计风格.总之就是一种风格 REST基于:HTTP.HTML.JSON.XML.URI 这些 ...
随机推荐
- Kindeditor API
根据map规则删除range中的element或attribute. cmd.remove({ span : '*', div : 'class,border' }); commonNode(ma ...
- 用cocos2d-html5做的消除类游戏《英雄爱消除》(1)——系统主菜单
系统主菜单如下图所示: 首先,介绍下这个主菜单,它包含了一个动画logo以及一个按钮选项,动画logo每隔1秒钟切换一张图片,点击相应的按钮选项会切换不同的游戏场景. 下面看下这个界面的源码: /** ...
- BootStrap实现左侧或右侧竖式tab选项卡
BootStrap实现左侧或右侧竖式tab选项卡 代码如下: <div style="height: 100px;"> <div class="col- ...
- 第十篇、模块一、sys\os\hashlib模块的应用
一.模块分为三种 1)自定义模块 2)第三方模块 3)内置模块 如何导入模块? 下面两种: 1)import 模块名字 as 别名(重新给模块命名) 2)from 模块名字 import 功能( ...
- Java 动态代理机制分析及扩展,第 1 部分
Java 动态代理机制分析及扩展,第 1 部分 http://www.ibm.com/developerworks/cn/java/j-lo-proxy1/ 本文通过分析 Java 动态代理的机制和特 ...
- ListOperations
RedisOperations<K,V> getOperations() V index(K key, long index) V leftPop(K key) V leftPop( ...
- 单机版 RedisPoolUtil({基本操作封装工具类})【一】
<!--集成的RedisJAR--> <!--引入jedis需的jar包--> <dependency> <groupId>redis.clients& ...
- 并发问题引出ThreadLocal
ThreadLocal Thread-->人类Runnable-->任务类 多线程并发问题引出ThreadLocal 多线程并发问题的原因: 操作同一个对象,对对象具有读写权限(只读如拍照 ...
- Execution Context(EC) in ECMAScript
参考资料 执行环境,作用域理解 深入理解JavaScript系列(2):揭秘命名函数表达式 深入理解JavaScript系列(12):变量对象(Variable Object) 深入理解JavaScr ...
- codeforces 628B B. New Skateboard (数论)
B. New Skateboard time limit per test 1 second memory limit per test 256 megabytes input standard in ...