gpt4 book ai didi

python - 从 Django 网站发送 PDF 文件到 LogicalDOC

转载 作者:太空宇宙 更新时间:2023-11-04 02:59:01 24 4
gpt4 key购买 nike

大约 2 个月以来,我一直在开发我的 Django 网站,我开始使用自己的函数获得良好的全局结果。但是,现在我必须开始一个非常困难的部分(在我看来),在此之前我需要一些建议和想法。

我的 Django 网站使用 Django 变量从 HTML 模板创建了一些 PDF 文件。到目前为止,我将 PDF 文件直接保存在我的桌面上(在特定文件夹中),但它完全不安全。因此,我安装了另一个名为 LogicalDoc 的 Web 应用程序,以便直接在此应用程序上保存 PDF 文件。创建 PDF 文件并将其发送到 LogicalDoc。

LogicalDoc 拥有 2 个 API:SOAP 和 REST (http://wiki.logicaldoc.com/rest/#/),我知道 Django 可以与 REST 方法通信。

我也在阅读 Django 文档的这一部分,以了解我如何处理:https://docs.djangoproject.com/en/dev/topics/http/file-uploads/

为了理解我所暴露的内容,我制定了一个方案:

enter image description here

然后,我写了一个脚本来做一些事情:

  • 创建 PDF 文件后,我在 LogicalDoc 中创建了一个文件夹,例如以下名称:lastname_firstname_birthday

  • 两种可能性:如果文件夹存在,我不创建新文件夹,否则我创建它。

  • 完成后,我将 PDF 文件直接发送到文件夹内,方法是将 PDF 名称与文件夹名称进行比较

我对这个过程有一些疑问:

  • 首先,有没有可能做出这样的东西?

  • 做起来难吗?

  • 您能给我什么样的建议?

非常感谢!

PS:如果您需要我脚本的某些部分,主要是 PDF 创建部分,我可以在我的问题之后发布它;)

最佳答案

一个想法很简单,但它总是需要一些实践。我强烈建议您使用 REST api 并忘记 SOAP,因为它唯一能给您带来的是“痛苦”:)

如果我们检查文档,document/create它给出了下一个信息。

  1. 我们必须与之通信的端点。[协议(protocol)]://[服务器]:[端口]/文档/创建
  2. 要使用的 HTTP 方法 - POST
  3. 随请求提供的参数列表:body文档内容

更重要的是,您可以通过单击“试用”按钮来测试 API,并在浏览器的“网络”选项卡中检查请求(如果您打开开发者工具)

我不确定您必须在“文档”参数中提供哪种元数据,但我知道您可以通过测试它并将 XML 或 JSON 数据放入“文档”参数中来轻松了解应该做什么.

Content 是传输到服务器(即您的文件)的字节数组。

总而言之,“记录/创建”uri 的请求很简单

body = { 'headers': {},'object': {},}
document = "<note>data</note>"
content=open('report.xls', 'rb') #r - reading, b - binary
r = requests.post('http://logicaldoc/document/create', body=body, document=document, content=content)

请记住,文件传输请求需要时间,有时您可能会遇到超时异常。您的代码将停止并等待响应,因此最好使用 asyncio 或 celery 进行一些练习。请记住这些可能的问题。

关于python - 从 Django 网站发送 PDF 文件到 LogicalDOC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41565116/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com