Я пытаюсь загрузить изображение в Cloundinary, но произошла ошибка с кодом состояния 500, относящимся к cors, хотя я настроил сервер на разрешение всех источников.
Сообщение об ошибке выглядит так:
POST http://localhost:5000/my-route-upload 500 (Internal Server Error)
вот моя почтовая функция :
const cloudinaryUpload = (fileToUpload) => {
return axios.post(API_URL + '/cloudinary-upload', fileToUpload)
.then(res => console.log(res))
.catch(err => {
console.log(err)
console.log("cannot post")
}); }
На стороне сервера я добавил следующий блок в App.JS
const cors = require('cors');
var app = express();
app.use(cors({
origin: "*",
})
);
Эти коды действительно выполнялись, я попытался изменить источник на конкретный, например http://127.0.0.1:3001 (мой клиентский порт 3000). Затем появилось еще одно сообщение об ошибке
Вернемся к первой ошибке на вкладке Сеть/Заголовки :
Request URL: http://localhost:5000/cloudinary-upload
Request Method: POST
Status Code: 500
Referrer Policy: strict-origin-when-cross-origin
Access-Control-Allow-Origin: *
Host: localhost:5000
Origin: http://127.0.0.1:3000
Я не знаю, почему это не сработало. Я использую create-react-приложение для клиента и экспресс-генератор для сервера
const cloudinaryUpload = (fileToUpload) => { return axios.post(API_URL + '/cloudinary-upload', fileToUpload, {headers: { 'content-type': 'application/json' }}) .then(res => res.data) .catch(err => { console.log(err) console.log("cannot post") }); }