2012-03-02 5 views
0

Я создаю клиентский билетный портал, который использует OTRS в качестве бэкэнд. Портал позволяет клиентам создавать билеты, а также загружать вложения.Вложения OTRS

Я написал веб-сервис с использованием PHP и nuSOAP, который выполняет работу по вставке сведений о билетах и ​​подробных данных о вложении в соответствующие таблицы OTRS (билет, билет_история, статья, статья_атлант и т. Д.). Но поскольку я использую webservice, я base64_encode вложение, прежде чем отправлять его как параметр в мой метод webservice. И когда я base64_decode это содержимое на стороне OTRS, я не могу удержать на всю жизнь, почему он dsnt вставлен в базу данных. Поэтому я вставляю содержимое без его декодирования.

И на моей странице портала, когда я нажимаю, чтобы загрузить приложение, я base64_decode содержимое перед отображением вложения.

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

Каков наилучший способ устранения этой проблемы? Или как я могу сделать OTRS base64_decode содержание перед загрузкой вложения?

ответ

0

вы пишите: «И когда я base64_decode этот контент на стороне OTRS, я не могу угадать всю жизнь, почему он dsnt вставлен в базу данных».

Просьба предоставить дамп данных, отправляемых на сервер (дамп мод дампа или отладка). Вы также можете добавить процедуру печати на сервер или использовать wirehark.

Просьба указать точный результат, является ли оно base64 кодированным дважды?

Что обычно отправляется, когда вы загружаете что-то в otrs? это mime upload. вы пробовали с тестовым клиентом, таким как завиток? Какой именно URL вы звоните? Я использовал кодирование данных формы с lwp perl для загрузки данных в otrs в прошлом.

предоставьте подробную информацию, чтобы мы могли диагностировать это. спасибо, майк

Смежные вопросы