У меня есть веб-сервис, который ожидает параметр типа "xs: base64Binary" - это файл для хранения в базе данных.
Я пытаюсь использовать сервис, используя родные классы веб-сервиса PHP 5. Я пробовал несколько вещей:
// Get the posted file
$file = file_get_contents($_FILES['Filedata']['tmp_name']);
// Add the file, encoding it as a base64
$parameters = array("fileBytes" => base64_encode($file));
// Call the webservice
$response = $client->attachFile($parameters);
В результате появляется ошибка «Неверный запрос». Если файл представляет собой текстовый файл, а я не base64_encode, он работает нормально. Проблема возникает при публикации бинарного файла, такого как изображение.
Кто-нибудь знает трюк здесь?
РЕДАКТИРОВАТЬ 1
Также проблематично то, что если я кодирую текстовый файл, он, кажется, работает, но, конечно, он закодирован и в конечном итоге становится ненужным после загрузки и просмотра (т. Е. Текст закодирован и, похоже, не декодируется сервер).