我正在创建一个客户票务门户,它使用OTRS作为后端。该门户允许客户创建票证并上传附件。
我已经使用PHP和nuSOAP编写了一个Web服务,它完成了在适当的OTRS表(ticket、ticket_history、article_attachment等)中插入ticket详细信息和附件详细信息的工作。但由于我使用的是webservice,在将附件作为参数发送到我的webservice方法之前,我对其进行了base64_encode编码。当我在OTRS端对这些内容进行base64_decode时,我无法忍受为什么它会被插入数据库。所以我插入内容而不进行解码。
在我的门户页面上,当我点击下载附件时,我会在显示附件之前对内容进行base64_decode。
对于客户门户来说,这一切都很好,但当我试图从OTRS中的代理票证缩放页面下载附件时,它说不支持文件格式。这是可以理解的,因为内容在下载之前是经过编码和解码的
解决此问题的最佳方法是什么?或者,在下载附件之前,我如何使OTRS base64_decode内容?
您写道:"当我在OTRS端对这些内容进行base64_decode时,我无法忍受为什么它会被插入数据库。"
请提供发送到服务器的数据转储(mod dump io或debug dump)。您还可以向服务器添加打印例程或使用wireshark。
请提供确切的输出,它是否被base64编码了两次?
当你上传一些东西到otrs时,通常会发送什么?这是一个mime上传。你试过使用curl这样的测试客户端吗?你到底在叫什么网址?我过去使用lwp-perl进行表单数据编码来将数据上传到otrs。
请提供详细信息,以便我们能够对此进行诊断。谢谢mike