node开发(base64+号问题,typeof,mysql replace操作,superagent用法,url解析,uuid)

param(url里面的参数)使用base64编码的时候会出现 +号


而传url的时候  后台接受到param 的时候会把 +号 认为是空格  从而解析错误


办法:req.query.param = req.query.param.replace(/ /g,'+');


/pattern/是正则表达式的界定符,里面的内容(pattern)是要匹配的内容


对于表达式对象的exec方法,不加入g,则只返回第一个匹配,无论执行多少次均是如此,如果加入g,则第一次执行也返回第一个匹配,再执行返回第二个匹配,依次类推。例如 



特殊情况下 前台按照接口文档 不传入对应数值的时候  使用 typeof给个默认值

var searchStr=typeof reqParam.searchStr !='string' ? "" : reqParam.searchStr;


replace into table (id,name) values('1','aa'),('2','bb') 


REPLACE的运行与INSERT很相似。只有一点例外,假如表中的一个旧记录与一个用于PRIMARY


KEY或一个UNIQUE索引的新记录具有相同的值,则在新记录被插入之前,旧记录被删除。 
注意,除非表有一个PRIMARY KEY或UNIQUE索引,否则,使用一个REPLACE语句没有意义。该


语句会与INSERT相同,因为没有索引被用于确定是否新行复制了其它的行。


 superagent用法  :https://cnodejs.org/topic/5378720ed6e2d16149fa16bd

var request =require('superagent');

request
                    .post(url)
                    .send(param)
                    .set(headers)
                    .end(function(err,data){
                        if(err||data.status>=400){
                            log.error('[apiTest] error: ' + JSON.stringify(data));
                            res.statusCode = data.status ? 403 : data.status;
                            res.send(data.text);
                        }
                        else {
                            log.info('apiTest: ' + JSON.stringify(data.text));
                            res.statusCode = data.status;
                            res.send(data.text);
                        }
                    });

param和headers都是obj对象



var url = require('url');
var a = url.parse('http://example.com:8080/one?a=index&t=article&m=default');
console.log(a);
 
//输出结果:

    protocol : 'http' ,
    auth : null ,
    host : 'example.com:8080' ,
    port : '8080' ,
    hostname : 'example.com' ,
    hash : null ,
    search : '?a=index&t=article&m=default',
    query : 'a=index&t=article&m=default',
    pathname : '/one',
    path : '/one?a=index&t=article&m=default',
    href : 'http://example.com:8080/one?a=index&t=article&m=default'
}


nodejs生成UID(唯一标识符)——node-uuid模块
unique identifier 惟一标识符        -->> uid


在项目开发中我们常需要给某些数据定义一个唯一标识符,便于寻找,关联。


node-uuid模块很好的提供了这个功能。


https://github.com/broofa/node-uuid/


使用起来很简单,两种:
var uuid = require('uuid');

1、uuid.v1(); -->基于时间戳生成  (time-based)


2、uuid.v4(); -->随机生成  (random)


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值