Для отправки POST-запроса с сайта на локальный сервер с помощью JavaScript можно использовать fetch API. Вот пример кода:
```javascript
fetch('http://localhost:3000/api', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify({ key: 'value' })
})
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error(error));
```
Чтобы разрешить отправку POST-запросов на localhost из Tampermonkey скрипта, вам нужно настроить заголовки CORS (Cross-Origin Resource Sharing) на вашем локальном сервере. Для этого можно добавить следующие заголовки к ответу сервера:
```javascript
app.use((req, res, next) => {
res.setHeader('Access-Control-Allow-Origin', '*');
res.setHeader('Access-Control-Allow-Methods', 'POST, GET, OPTIONS');
res.setHeader('Access-Control-Allow-Headers', 'Content-Type');
next();
});
```
Этот код добавляет заголовки CORS, позволяющие отправлять POST-запросы на указанный сервер. После этого запрос из вашего Tampermonkey скрипта должен проходить успешно.
Если вы продолжаете получать ошибку политики безопасности контента, вам может потребоваться проверить настройки безопасности браузера для разрешения запросов на localhost. Например, в Google Chrome вы можете установить расширение Allow CORS: Access-Control-Allow-Origin для временного разрешения запросов на нужный домен.