ChatGPT ответил на этот вопрос вот так:
Для того, чтобы корректно принять на сервере PUT-запрос с телом (body) в виде строки, вам нужно убедиться, что на сервере вы используете правильные заголовки и обработчики запросов.
Вот пример кода на Node.js, который позволит вам принимать PUT-запросы с телом в виде строки:
const express = require('express');
const app = express();
const bodyParser = require('body-parser');
// разрешаем CORS-запросы
app.use((req, res, next) => {
res.setHeader('Access-Control-Allow-Origin', '*');
res.setHeader('Access-Control-Allow-Methods', 'GET, POST, PUT, DELETE');
res.setHeader('Access-Control-Allow-Headers', 'Content-Type');
next();
});
// используем middleware для парсинга тела запроса
app.use(bodyParser.text());
// обрабатываем PUT-запрос с телом в виде строки
app.put('/', (req, res) => {
console.log(req.body);
res.send('OK');
});
// запускаем сервер
app.listen(3000, () => {
console.log('Server started on port 3000');
});
В этом примере мы используем библиотеку body-parser для парсинга тела запроса в виде строки. Также мы устанавливаем заголовки CORS для разрешения запросов с любого источника.
Если вы используете другой способ парсинга тела запроса, то убедитесь, что ваш обработчик PUT-запросов правильно обрабатывает строковое тело запроса.