wordfilter.js 805 B

123456789101112131415161718192021222324252627282930313233343536
  1. /**
  2. * example:
  3. var wordFilter = require('../libs/wordfilter');//加载字词过滤器客户端
  4. let checkWord = yield wordFilter.scMatch(str);
  5. if (checkWord.length>0){
  6. errors.param = i;
  7. errors.level = 1;
  8. errors.msg = '含有争议或敏感词汇['+checkWord[0][1]+'],请修改后再次提交';
  9. break;
  10. }
  11. */
  12. 'use strict';
  13. var C = require('../config');
  14. //加载词语过滤客户端
  15. var scFilter = require('sc-filter').createClient();
  16. if (C.wordFilter.unix_socket){ // Unix Socket 方式
  17. scFilter.connect(C.wordFilter.unix_socket);
  18. }else{ // TCP 方式
  19. scFilter.connect(C.wordFilter.port,'localhost');
  20. }
  21. /**
  22. * @todo 过滤关键字
  23. * @param str
  24. * @returns {Function}
  25. */
  26. function scMatch(str){
  27. return function(cb) {
  28. scFilter.match(str,function(result){
  29. cb(null,result);
  30. });
  31. }
  32. }
  33. exports.scMatch=scMatch;