You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
How to change the default error output in restify 7.x? #93
And I got the desired result. Now am in a process of migrating my project to restify 7.x. So I couldn't use the restify.RestError, I have tried 'restify-errors-options' package's subclassing property but it doesn't work for me. I have tried the below code restifyErrors.makeConstructor('ValidationError', { restCode: 'ValidationError', statusCode: 400, message: message }); var myErr = new errors.ValidationError( );
And I ended up with the below error
var myErr = new errors.ValidationError(); ^
TypeError: errors.ValidationError is not a constructor
So can anyone suggest a solution for this problem?
It seems that the docs are wrong, makeConstructor actually returns the new constructor instead of storing it in the module, so the proper way to use it would be
let ValidationError = restifyErrors.makeConstructor('ValidationError', {
restCode: 'ValidationError',
statusCode: 400,
message: message
});
var myErr = new errors.ValidationError();
/Users/aliu/Sandbox/test/errors.js:3
throw new MyErr('boom');
^
MyError: boom
at Object.<anonymous> (/Users/aliu/Sandbox/test/errors.js:3:7)
at Module._compile (internal/modules/cjs/loader.js:701:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:712:10)
at Module.load (internal/modules/cjs/loader.js:600:32)
at tryModuleLoad (internal/modules/cjs/loader.js:539:12)
at Function.Module._load (internal/modules/cjs/loader.js:531:3)
at Function.Module.runMain (internal/modules/cjs/loader.js:754:12)
at startup (internal/bootstrap/node.js:283:19)
at bootstrapNodeJSCore (internal/bootstrap/node.js:622:3)
Activity
dvdkon commentedon Jan 27, 2019
It seems that the docs are wrong,
makeConstructoractually returns the new constructor instead of storing it in the module, so the proper way to use it would beSensitiveMix commentedon Apr 1, 2019
Restify-errors 7.x makeConstructor doesn't work, I use it normally in 5.x. You can install Restify 7.2.1.
SensitiveMix commentedon Apr 1, 2019
@ltvolks @micahr @sean3z @ranjithrajendran
sephiroth32 commentedon Apr 2, 2019
in older versions the plugin add the constructor, in this version you need add manually
DonutEspresso commentedon Apr 4, 2019
Hi all - what version of restify-errors are you using? This should work on latest 7.0.0 release:
Regarding the storing of classes on the exports of the module, that feature was removed in 6.x. Some additional context can be found here:
https://github.com/restify/errors#custom-constructors