NetSuite RESTlet 身份验证失败

Failed NetSuite RESTlet authentication

我正在尝试在 NetSuite 中开发一个简单的表单 portlet,以在后端提交给 RESTlet。这是我的表单 portlet:

function workManagerPortlet(portlet, column) {

    portlet.setTitle('Portlet');

    portlet.addField(....)
    // INSERT HERE ALL THE FORM FIELDS

    portlet.setSubmitButton(nlapiResolveURL('RESTLET', 'customscript_gw_ss_form_backend', 'customdeploy_wm_form_backend', true), 'Submit', '_hidden');
}

当我点击提交时,我可以在 Chrome 的开发者控制台中看到状态是 206 部分内容,但是我提交的记录不是存储在数据库和控制台中没有对此请求的响应。

因此,我决定调查与 RESTlet 的连接。我的问题是我无法通过 RESTlet 身份验证。这是我的 NLAuth headers:

User-Agent: SuiteScript-Call
Authorization: NLAuth
nlauth_account: TSTDRV1291212
nlauth_email: $email
nlauth_signature: $password
nlauth_role: administrator
Content-Type: application/json

显然,将'$email'和'$password'替换为相应的值。

'nlauth_role' 值是 Netsuite 中的角色 ID。

我正在使用 Postman 对此进行测试,我总是收到“401 需要授权”状态和以下错误。

{
"error":
{
"code": "USER_ERROR",
"message": "header is not NLAuth scheme [ NLAuth ]"
}
}

关于我做错了什么的想法?

nlauth 值应该像这样用逗号分隔:

NLAuth nlauth_account: TSTDRV1291212, nlauth_email: $email, nlauth_signature: $password, nlauth_role: administrator`

还有一件事,尝试发送 3 而不是 administrator。实际上是 NetSuite 需要的角色 ID。