0

我正在创建一个使用 OTRS 作为后端的客户票务门户。该门户允许客户创建票证并上传附件。

我使用 PHP 和 nuSOAP 编写了一个 Web 服务,它可以在相应的 OTRS 表(ticket、ticket_history、article、article_attachment 等)中插入工单详细信息和附件详细信息。但是由于我使用的是 web 服务,所以在将附件作为参数发送到我的 web 服务方法之前,我对附件进行了 base64_encode。当我在 OTRS 端对这些内容进行 base64_decode 时,我一生都无法理解为什么它会被插入到数据库中。所以我插入内容而不解码。

在我的门户页面上,当我单击下载附件时,我会在显示附件之前对内容进行 base64_decode。

对于客户门户来说一切正常,但是当我尝试从 OTRS 的代理工单缩放页面下载附件时,它说不支持文件格式。这是可以理解的,因为内容在下载之前已经过编码和解码。

解决此问题的最佳方法是什么?或者如何在下载附件之前制作 OTRS base64_decode 内容?

4

1 回答 1

0

你写道:“当我在 OTRS 端对这个内容进行 base64_decode 时,我一生都无法理解为什么它会被插入到数据库中。”

请提供发送到服务器的数据转储(mod dump io 或 debug dump)。您还可以向服务器添加打印例程或使用wireshark。

请提供准确的输出,它是否被 base64 编码两次?

当您将某些内容上传到 otrs 时,通常会发送什么?这是一个 mime 上传。您是否尝试过使用 curl 等测试客户端?你打电话的具体网址是什么?过去我使用带有 lwp perl 的表单数据编码将数据上传到 otrs。

请提供详细信息,以便我们对此进行诊断。谢谢,迈克

于 2012-03-06T14:20:39.350 回答