Использовать CDATA для хранения необработанных двоичных потоков?

Вам необходимо создать объект данных формы. В функции ajax установите для processData значение false.

Поскольку данные, передаваемые в параметр данных в виде объекта (технически, что угодно, кроме строки), будут обрабатываться и преобразовываться в строку запроса, в соответствии с типом содержимого по умолчанию «application / x-www-form-urlencoded» ». Если вы хотите отправить DOMDocument или другие необработанные данные, установите для этого параметра значение false.

JS

  $("form").submit(function(evt){    
      evt.preventDefault(); //prevent refresh
      const formData = new FormData(this); // you need to create a FormData obj to be able to send files
   $.ajax({
       url: 'upload-my-files', //change this to your url
       type: 'POST',
       data: formData, //put formData as body data
       cache: false,
       contentType: false,
       enctype: 'multipart/form-data',
       processData: false,
       success: function (data) {
         console.log(data);
       }
   });
 });

Ссылки:

https://developer.mozilla.org/en-US/docs/Web/API/FormData [118 ]

http://api.jquery.com/jquery.ajax/

7
задан Community 23 May 2017 в 10:29
поделиться

3 ответа

Можно сохранить его как CDATA, но существует риск, что некоторые последовательности байта оценят к допустимому XML, который закрывает раздел CDATA. После беглого взгляда на http://www.w3.org/TR/2006/REC-xml-20060816/#sec-cdata-sect кажется, что у Вас может быть любая последовательность символов кроме"]]>". Взгляните на то, что является допустимым символом XML также.

-1
ответ дан 6 December 2019 в 06:51
поделиться

Символ Nul ('\0' в C) не допустимо нигде в XML, как раз когда Escape (и № 0;).

12
ответ дан 6 December 2019 в 06:51
поделиться

XML является форматом простого текста - не используют его, чтобы хранить двоичные данные. Поместите двоичные блобы в отдельные файлы и добавьте элемент к Вашему XML, который ссылается на эти файлы. Если Вы хотите сохранить все двоичные блобы в единственном файле, добавьте атрибут смещения или что-то как этот...

4
ответ дан 6 December 2019 в 06:51
поделиться
Другие вопросы по тегам:

Похожие вопросы: