1.0.8 • Published 4 years ago

jm-err v1.0.8

Weekly downloads
25
License
MIT
Repository
github
Last release
4 years ago

English | 简体中文

jm-err

common error defines as JSON format.

used for return json format info on RESTful api.

define an Err

const Err = {
    SUCCESS: {
        err: 0, // unique code, integer
        status: 500, // status, integer
        msg: 'Success', // message, string
        ... // else info
    },
    ...
}

status: Http status

if status is not defined, status = err when err is Http status value, otherwise 500.

install

npm i jm-err

usage

use Err:

const {Err} = require('jm-err')

console.log(Err.FAIL)

throw an error.

const {Err, err} = require('jm-err')

throw err(Err.FAIL)

throw err('string as param')

// define a new Err
throw err({
  err: 222,
  msg: 'main msg',
  else: 'msg else'
})

// e.data == Err.FA_NOAUTH
const e = err(Err.FA_NOAUTH)
const {
  code,
  status, 
  message,
  data
} = e

output error info:

Error: Fail
    at err (E:\jamma\core\packages\jm-err\lib\index.js:150:13)
    ...
  code: 1,
  status: 500,
  data: { err: 1, msg: 'Fail', status: 500 }
}

template message support

const {err} = require('jm-err')
const e = err('err param: ${param} paramNum: ${num}', {
  param: 'abc',
  num: 123
})
console.log(e.message)
//print 'err param: abc paramNum: 123'

// define template in Err
const ErrSample = {
  err: 1,
  status: 500,
  msg: 'err param: ${param} paramNum: ${num}'
}
const e2 = err(ErrSample, {
  param: 'abc',
  num: 123
})
console.log(e2.message)
// print 'err param: abc paramNum: 123'

i18n

const {Err:{FAIL:{msg}}, t} = require('jm-err')
console.log(msg)
// 输出 'Fail'
console.log(t(msg, 'zh-CN'))
console.log(msg)
// 输出 '失败'

defined Errs

nameerrstatusmsg
SUCCESS0200Success
FAIL1Fail
FA_SYS2System Error
FA_NETWORK3Network Error
FA_PARAMS4Parameter Error
FA_BUSY5Busy
FA_TIMEOUT6Time Out
FA_ABORT7Abort
FA_NOTREADY8Not Ready
FA_NOTEXISTS9Not Exists
FA_EXISTS10Already Exists
FA_VALIDATION11Validation Error
OK200OK
FA_BADREQUEST400Bad Request
FA_NOAUTH401Unauthorized
FA_NOPERMISSION403Forbidden
FA_NOTFOUND404Not Found
FA_INTERNALERROR500Internal Server Error
FA_UNAVAILABLE503Service Unavailable

Contributing

Any type of contribution is welcome, here are some examples of how you may contribute to this project:

  • Use jm-err in your daily work.
  • Submit issues to report bugs or ask questions.
  • Propose pull requests to improve our code.
1.0.8

4 years ago

1.0.7

4 years ago

1.0.6

4 years ago

1.0.5

6 years ago

1.0.4

6 years ago

1.0.3

6 years ago

1.0.2

6 years ago

1.0.1

7 years ago

1.0.0

7 years ago

0.0.3

7 years ago

0.0.2

7 years ago

0.0.1

7 years ago