All files / exp/middleware res_req.js

100% Statements 7/7
100% Branches 8/8
100% Functions 1/1
100% Lines 7/7

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88                                                                                                                                3x         3x   11x   11x                 3x   17x 17x    
'use strict'
 
/**
 * defCode: {
  100: 'continue',
  101: 'switching protocols',
  102: 'processing',
  200: 'ok',
  201: 'created',
  202: 'accepted',
  203: 'non-authoritative information',
  204: 'no content',
  205: 'reset content',
  206: 'partial content',
  207: 'multi-status',
  208: 'already reported',
  226: 'im used',
  300: 'multiple choices',
  301: 'moved permanently',
  302: 'found',
  303: 'see other',
  304: 'not modified',
  305: 'use proxy',
  307: 'temporary redirect',
  308: 'permanent redirect',
  400: 'bad request',
  401: 'unauthorized',
  402: 'payment required',
  403: 'forbidden',
  404: 'not found',
  405: 'method not allowed',
  406: 'not acceptable',
  407: 'proxy authentication required',
  408: 'request timeout',
  409: 'conflict',
  410: 'gone',
  411: 'length required',
  412: 'precondition failed',
  413: 'payload too large',
  414: 'uri too long',
  415: 'unsupported media type',
  416: 'range not satisfiable',
  417: 'expectation failed',
  418: 'I\'m a teapot',
  422: 'unprocessable entity',
  423: 'locked',
  424: 'failed dependency',
  426: 'upgrade required',
  428: 'precondition required',
  429: 'too many requests',
  431: 'request header fields too large',
  500: 'internal server error',
  501: 'not implemented',
  502: 'bad gateway',
  503: 'service unavailable',
  504: 'gateway timeout',
  505: 'http version not supported',
  506: 'variant also negotiates',
  507: 'insufficient storage',
  508: 'loop detected',
  510: 'not extended',
  511: 'network authentication required',
  },
*/
const codeMap = { // 在200的基础上,在不同的状态码处理
  200: 'ok',
  1000: '参数不对',
}
 
const utilFn = {
  resBody(res, code, msg, data) {
    res.status(code || 200)
    /* eslint no-return-assign: 0 */
    return res.json({
      code: code || 0,
      msg: msg || codeMap['200'],
      data: data || null,
    })
  },
}
 
// res.throw(err) TODO
module.exports = {
  resMid: (req, res, next) => { // 目前就这一个用到
    res.resMid = utilFn
    next()
  },
}