Удалите разрывы строк из данных нескольких форм. Узел - PullRequest
0 голосов
/ 02 июля 2019

Данные отправляются с узла через Mac. Это не удается:

POST / HTTP/1.1
Accept: application/json, text/plain, */*
Content-Type: multipart/form-data; boundary=--------------------------410170969577572462482590
Authorization: Basic U3dlY2q9DdlRvQ29uqdGFjdDpVM2RsWTI5RGRsUnZqRMjl1ZEdGamRB
User-Agent: axios/0.18.0
Content-Length: 437
Host: localhost:3000
Connection: close

    {
  "_overheadLength": 105,
  "_valueLength": 5,
  "_valuesToMeasure": {},
  "writable": false,
  "readable": true,
  "dataSize": 0,
  "maxDataSize": 2097152,
  "pauseStreams": true,
  "_released": false,
  "_streams": {
    "0": "----------------------------097921969493700670690484\r\nContent-Disposition: form-data; name=\"Domain\"\r\n\r\n",
    "1": "Test"
  },
  "_currentStream": {},
  "_insideLoop": false,
  "_pendingNext": false,
  "_boundary": "--------------------------097921969493700670690484"
}

Данные отправлены почтальоном из Windows. Это работает:

POST / HTTP/1.1
Content-Type: multipart/form-data; boundary=--------------------------214255515908701131866697
Authorization: Basic U3dlY29DwerdlRvQ29uwerdGFjdDpVM2RsWTwerI5RGRsUnZRMjl1ZEdGamRB
User-Agent: PostmanRuntime/7.15.0
Accept: */*
Cache-Control: no-cache
Postman-Token: 4af4ff14-1abd-4ab7-9e01-5ddd846acfa9
Host: localhost:3020
accept-encoding: gzip, deflate
content-length: 383
Connection: keep-alive

----------------------------214255515908701131866697
Content-Disposition: form-data; name="Domain"

test
--

Кажется, что узел добавляет ряд тормозов: \r\n\r\n здесь и там.

Это вызывает сбой на сервере Windows, когда я отправляю на него данные: «Превышена длина строки 100».

См. Этот вопрос: Отправка данных из нескольких частей после запроса. Ошибка в каком-либо сервисе Microsoft "Превышен предел длины линии 100"

Я использую этот пакет данных формы для публикации данных в сочетании с axios.

Можно ли добавить фильтр / промежуточное ПО и т. Д., Который удаляет alla / n / r и т. Д. В моем запросе на публикацию?

Обновление

Мой запрос с узла:

const form_data = new FormData();
form_data.append('Domain', 'test');


const request_config = {
        headers: {
            "Authorization": "Basic dffdg",
            "Content-Type": `multipart/form-data; boundary=${form_data._boundary}`
        },
        data: form_data
    };


    await axios.post(url, form_data, request_config).then(response => {

1 Ответ

1 голос
/ 02 июля 2019

попробуйте удалить data из request_config.

const form_data = new FormData();
form_data.append('Domain', 'test');


const request_config = {
    headers: {
        "Authorization": "Basic dffdg",
        "Content-Type": `multipart/form-data; boundary=${form_data._boundary}`
    },
    //data: form_data
};


await axios.post(url, form_data, request_config).then( /* ... */ )

из axios / axios документация

Примечание

При использовании псевдонимов методы url , method и data свойства не должны указываться в конфигурации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...