PHP Документирование: получение пустого документа при загрузке заполненного подписанного документа

#php #laravel #pdf #jwt #docusignapi

#php #ларавель #PDF #агентство jwt #docusignapi

Вопрос:

Я интегрировал документирование с приложением PHP Laravel, используя JWT Auth. Он отлично работает, может отправить электронное письмо получателям для подписи. Теперь, после того, как все подписи будут подписаны, мы хотели бы загрузить полный подписанный документ с CoC.

Я использую следующий код, чтобы получить подписанный документ для конкретного конверта:

 $envelope_api = new EnvelopesApi($apiClient);  $tmpFile = $envelope_api-gt;getDocument($account_id, 'combined', $envelope_id);  $savCert = file_put_contents("signed_document.pdf", file_get_contents($tmpFile-gt;getPathname()));  

Но я получаю пустой документ, когда файл загружается. Было бы очень полезно, если бы вы могли подсказать, как решить эту проблему.

полезная нагрузка json для файла $tmpfile:

 object(SplFileObject)#418 (5)  {  ["pathName":"SplFileInfo":private]=gt; string(44) "C:UsersAppDataLocalTemp19F.tmp"   ["fileName":"SplFileInfo":private]=gt; string(7) "19F.tmp"   ["openMode":"SplFileObject":private]=gt; string(1) "r"   ["delimiter":"SplFileObject":private]=gt; string(1) ","   ["enclosure":"SplFileObject":private]=gt; string(1) """  }  

Ответ №1:

Это ошибка в версии 6.5 SDK, версия 6.5.1 исправлена. Пожалуйста, обновите свой пакет и повторите попытку.

Если вы используете 6.5, вам нужно будет добавить эти строки:

 $tmpFile = $envelopeApi-gt;getDocument($account_id, 'combined', $envelope_id); $tmpFile-gt;rewind(); $contents = $tmpFile-gt;fread($tmpFile-gt;fstat()['size']);  

Комментарии:

1. большое спасибо, что сообщили мне об ошибке. Я обновил версию, и она работает так, как ожидалось. Только одна вещь, «комбинированный» должен включать подписанный документ с CoC, верно? Но это всего лишь загрузка полного подписанного документа. Нам тоже нужен КоК. Еще раз спасибо!

2. попробуйте использовать «сертификат» и посмотрите, действительно ли это то, что вам нужно

3. Да, я попробовал использовать «сертификат», и он загружает только сертификат. Спасибо