我们开始看到这些DocuSign例外09/24/2019:
DocuSign \ eSign \ ApiException (401)
[401] Error connecting to the API (https://NA3.docusign.net/restapi/v2/login_information)
围绕我们的DocuSign逻辑的代码都没有被触及近六个月。所以我不知道为什么会抛出该异常。
我们正在使用以下软件包(与此相关):
laravel/framework v5.8.35
docusign/esign-client 3.0.1
tucker-eric/docusign-rest-client 1.0.0
tucker-eric/laravel-docusign 0.1.1
我试图用作曲家来更新软件包,认为它们可能已经进行了更新以解决问题,但是除了抛出USER_AUTHENTICATION_FAILED
而不是上面的异常消息外,它没有做任何其他改变。
正如我所说,没有代码被触及,而且我对DocuSign API的经验很少,和更糟糕的是,这是一个旧的开发人员的代码...
我 am 能够使用Postman到达终点并使用我们的凭据进行身份验证,并且看起来工作正常。再说一次,我不确定这是怎么开始的。
来自控制器的代码:
$parcel = request('parcel_id');
$subdivision = $user->subdivision_id;
$subEmail = Subdivision::where('id', $user->subdivision_id)->pluck('email')->first();
$move = Move::create([
'full_name' => request('full_name'),
'email' => request('email'),
'phone_number' => request('phone_number'),
'parcel_id' => $parcel,
'direction' => request('direction'),
'action_date' => request('action_date'),
'user_id' => auth()->id(),
'subdivision_id' => $subdivision
]);
$residentTabs = array(
array(
'tabLabel' => env('MOVE_IN_ADDRESS_FIELD'),
'value' => $move->parcel->MailingAddress
),
array(
'tabLabel' => env('MOVE_IN_DATE_RESIDENT_FIELD'),
'value' => $move->action_date->format('m/d/Y')
),
array(
'tabLabel' => env('MOVE_IN_EMAIL_FIELD'),
'value' => $move->email
),
array(
'tabLabel' => env('MOVE_IN_PRIMARY_PHONE_FIELD'),
'value' => $move->phone_number
),
array(
'tabLabel' => env('MOVE_IN_FULL_NAME_FIELD'),
'value' => $move->full_name
)
);
$pmTabs = array(
array(
'tabLabel' => env('MOVE_IN_PM_ADDRESS_FIELD'),
'value' => $move->parcel->MailingAddress
),
array(
'tabLabel' => env('MOVE_IN_PM_DATE_FIELD'),
'value' => $move->action_date->format('m/d/Y')
),
);
$templateRoles = array(
array(
'email' => $move->email,
'name' => $move->full_name,
'roleName' => 'Resident',
'tabs' => array(
'textTabs' => $residentTabs
)
),
array(
'email' => $subEmail,
'name' => $user->name,
'roleName' => 'Property Manager',
'tabs' => array(
'textTabs' => $pmTabs
)
)
);
$envelopeDefinition = array(
'status' => 'sent',
'templateId' => env("DOCUSIGN_TEMPLATE_ID"),
'templateRoles' => $templateRoles
);
$contract = DocuSign::get('envelopes')->createEnvelope($envelopeDefinition);
最后一行是引发异常的位置,引发异常的函数是:
vendor/docusign/esign-client/src/ApiClient.php::callApi
我们希望它可以正常工作,不引发任何异常并成功创建信封。
但是,我们一直看到USER_AUTHENTICATION_FAILED
和常规401
例外。
感谢您的帮助!
答案 0 :(得分:0)
您的令牌可能已过期。不知道它是如何创建的以及正在使用的身份验证机制。您需要检查令牌和使用它的REST API调用中的标头在哪里。可能是经过硬编码的,或者是否有用于继续获取新令牌的刷新令牌,而该过程中断了。
答案 1 :(得分:0)
如果在尝试访问login_information
端点时遇到身份验证失败,则可能是您的应用程序使用了带有无效密码的旧标题验证。
我建议以下内容: