我想从我的RESTlet中抛出自定义错误,我试图使它与NetSuite的错误格式类似。我想客户看到HTTP代码400。当我使用脚本V1我只是这样做:如何在NetSuite中从RESTlet中引发自定义错误?
throw nlapiCreateError('MY_ERROR_CODE', 'My message');
我得到在这种情况下这样的答案(这是我的目标):
{
"error":
{
"code": "MY_ERROR_CODE",
"message": "My message"
}
}
但是当我使用脚本V2我这样做:
throw error.create({
name: 'MY_ERROR_CODE',
message: 'My message'});
而且我得到这个:
{
"error":
{
"code": "JS_EXCEPTION",
"message": "{"type":"error.SuiteScriptError","name":"MY_ERROR_CODE","message":"My message","stack":["createError(N/error)","prevalidations(SuiteScripts/RESTlet.js:152)","doPost(SuiteScripts/RESTlet.js:86)","createError(N/error)"],"cause":{"name":"MY_ERROR_CODE","message":"My message"},"id":""}"
}
}
任何人都可以告诉我如何使用v1时如何获得答案,如果我使用v2?
我得到400.没关系。但是我不想让我的错误对象像v2脚本一样被包装起来。我想以我创建的形式得到我的错误对象,但是NetSuite包装了它。 – Logrus