在上篇中说了怎么调用接口,这篇就来说说,接口配置吧。


后端是用NodeJS来写的,由于写后台(以前用的是C#语言)的时候,大部操作都在是对数据库表的增、删、改、查操作,

比如:根据查询出来的数据,然后某个字段进行 if else 操作。满足条件我的执行A操作,不满足的时间执行B操作。所有就我就把这些操作抽里出来,封装成相应的规则。

一个接口可能要用到好条规则,按照执行顺序一次执行下去,就可以了,执行到最后的时候,再组织成相应的数据返回回去,这样一个接口就写好。

我只要配置规则接口就定义好了,当然简单的逻辑不是特别复杂的,这样的规则是能够满足的,配置一下,接口就定义好了,前端就能调用得到相应的数据了。

业务规则现在还是不断的完善当中,具体代码在我的 github上可以找到,里面的 server目录里面。

1.登录界面

2.打开配置界面



界面比较丑呀,通用就行,哈哈~~

3.填写接口信息

  • 接口是否启用
  • 是否需要Token验证
  • 请求方式:get、post、put还是delete等
  • 接口地址以及描述
  • 参数等信息

如下图所示:

4.配置规则信息

填写两条规则

  • 第一是查询SQL,这个好理解吧,total如果大于0说明用户填写的,用户名及密码是正确的,否则就不存在,很简单的一条SQL。
select count(1) total,id,concat('xtn_',md5(username),'_',md5(password))token, username,sex,cityname,age from xtn_userinfo t where t.username = ':username' and t.password = ':password'
  • 第二条规则,就是一段判断的代码,根据上面查询出来的数据进行判断操作。判断失败了,回返回“用户名或密码不正确。”
if(this.total === 0){
return false ;
}else{
return true;
}

  • 用户输入错误时返回的信息内容如下图所示:

对sys_session表进行删除和插入操作

  • 其实应该放到Redis里去的,先用表吧,以后有机会再改成Redis。

最后保存数据到系统的Cache里去。

以上就是一个接口的配置。


基本上就完了。以后有时间,写一写常用的组件,移动端的,比如消息弹窗,加载,刷新(下拉更新,上拉加载下一面数据)等组件吧。有时间的话,一个组件用三个框架ReactJs,Angular以及Vue都实现一下。

Angular4+NodeJs+MySQL 入门-06 接口配置的更多相关文章

  1. Angular4+NodeJs+MySQL 入门-05 接口调用

    接口调用 今天讲一下,如果在前端页面上通过调用后台接口,返回来的数据.把前面的几章结合起来. 这里所有用的代码在 https://github.com/xiaotuni/angular-map-htt ...

  2. Angular4+NodeJs+MySQL 入门-04 接口调用类

    上一篇文章说一下,后台接口的创建,这篇说一下如果调用接口. 创建一个目录helpers 此目录下有三个文件分别是 ApiClient.ts.clientMiddleware.ts.Core.ts,前面 ...

  3. Angular4+NodeJs+MySQL 入门-03 后台接口定义

    这篇里是如何定义接口,我们一般访问接口如:post请求调用http://127.0.0.1:11000/webapi/userinfo/user 这个接口,成功返回用户信息,如果失败要返回失败原因等. ...

  4. Angular4+NodeJs+MySQL 入门-01

    有一定的后台开发经验ES6语法.后台没有用框架来,纯自己写.会sql语句 安装NodeJS的安装 从网上下载 https://nodejs.org/en/ 选择自己,我用的是最新版本 Angular ...

  5. Angular4+NodeJs+MySQL 入门-02 MySql操作类

    NodeJs操作MySQL类 此类封装了几个常用的方法:插入,更新,删除,查询,开启事务,事务提交,事务回滚等操作.有一这个类,操作MYSQL就方便多了. 批处理,存储过程等方法还没有添加,因为觉得目 ...

  6. MySQL入门04-MySQL主从配置

    1.主节点授权同步用户 2.主节点修改配置文件 3.从节点修改配置文件 4.主节点锁定后查看状态 5.从节点配置并启动同步.查看状态 6.主节点解锁并验证从节点是否正常同步 环境:CentOS 6.7 ...

  7. nodejs+mysql入门实例

    此前我已准备好mysql,使用的是PHP的组合包Appserv 手动添加数据库依赖: 在package.json的dependencies中新增, “mysql” : “latest”, { &quo ...

  8. nodejs+mysql入门实例(删)

    //连接数据库 var mysql = require('mysql'); var connection = mysql.createConnection({ host: 'bdm253137448. ...

  9. nodejs+mysql入门实例(改)

    //连接数据库 var mysql = require('mysql'); var connection = mysql.createConnection({ host: 'bdm253137448. ...

随机推荐

  1. ApplicationContex是干啥的

    ApplicationContext就是一个百宝箱 ApplicationContext是Spring的核心,Context我们通常解释为上下文环境,我想用“容器”来表述它更容易理解一些,Applic ...

  2. DELPHI XE5 UP2 运行IOS 遇到 Wrapper init failed: (null)问题的解决办法

    一.问题表现: 在MAC OSX(10.9.2)上安装了比较新的XCODE5.1 和COMMAND LINE TOOLS 在DELPHI XE5 UP2上放了一个按钮,输出到MAC OSX上,出现: ...

  3. 关于.net DateTime 的一些事儿

    最近开发的过程中遇到一种情况,在.net 程序中获取的Datetime格式的时间,在存入SQL server中,毫秒部分丢失. 这个是个很奇怪的状况,因为在Debug的时候,Datetime的变量的确 ...

  4. Arduino I2C + DS1307实时时钟

    主要特性 DS1307是Maxim的串行.I2C实时时钟芯片.主要特性有: 工作电压:主电源电压4.5~5.5V,电池电压2.0~3.5V 功耗:电池供电.备份模式时<500nA 接口:I2C, ...

  5. HackSeven Canvas上的动画

    当自定义View的时候,可以利用Canvas给View添加一些动画效果. 下面的例子,是在屏幕上绘制一个红色的小方块,这个小方块会在屏幕上面“乱跳”. 知识点 使用到的知识点: (1) 在View的子 ...

  6. subset子集全排序问题

    思路一 可以用递推的思想,观察S=[], S =[1], S = [1, 2] 时解的变化. 可以发现S=[1, 2] 的解就是 把S = [1]的所有解末尾添上2,然后再并上S = [1]里面的原有 ...

  7. 关于命名空间 namespace的总结

    namespace 有作用的类型  类.函数.常量关键字namespace必须在所有代码之前 除用于编码的declare语句 namespace Myproject; const A = 1; cla ...

  8. C++ TIM或者QQ 自动发送消息

    简单写了一下 很简单的demo 闲着没事干 #include "stdafx.h" #include <thread> #include <Windows.h&g ...

  9. 《C#多线程编程实战》2.8 Barrier

    不得不说,C#的同步线程的机制是真的多. 各式各样.几乎各种场景下都有可以使用的同步机制. 今天说的,就是比较有意思了. 等待的机制很简单,单纯的等待. 使用的方法我就等. 等待的东西或者内容则是你自 ...

  10. JSP页面导出PDF格式文件

    JSP页面导出PDF格式文件基本在前端页面可以全部完成 <script src="https://cdnjs.cloudflare.com/ajax/libs/html2canvas/ ...