Я попытался опубликовать некоторые двоичные данные, используя метод ajax()
в jQuery.Проблема заключается в том, что данные 128
кодируются в строку "128"
(не 0xf0
) в теле запроса.
$.ajax({
url: "ajax.php",
type: "post",
data: 128,
contentType: "application/octet-stream",
processData: false,
success: function(data, status, xhr) {
alert(data);
}
});
Должно состоять тело запроса (т. Е. Байт после заголовков HTTP)только из символов ASCII?
Я запутался в понятиях HTTP, таких как тип контента и кодировка передачи.Я увидел, что большая часть содержимого кодируется в символы ASCII, независимо от того, являются ли они исходными текстовыми или двоичными (например, байты изображения в кодировке base64).Тип содержимого application/octet-stream
, по-видимому, разрешает двоичные данные, включенные в тело запроса, но как объяснить приведенный выше пример?