Почему я получаю ошибку перед полетом при использовании метода исправления, но для сообщений с того же маршрута у меня нJavascript

Форум по Javascript
Ответить
Anonymous
 Почему я получаю ошибку перед полетом при использовании метода исправления, но для сообщений с того же маршрута у меня н

Сообщение Anonymous »

(index):1 Доступ к XMLHttpRequest по адресу «http://localhost:5001/api/updateBooking ... fa8b2d3e65» из источника «http://localhost:5173» заблокирован политикой CORS: метод PATCH не разрешен Access-Control-Allow-Methods в предполетном ответе.
это ошибка. Я установил PATCH в конфигурацию ядер, но ошибка все равно отображается
app.use(
cors({
origin: "http://localhost:5173",
methods: ["GET", "POST", "PUT", "DELETE","OPTIONS", "PATCH"],
allowedHeaders: ["Authorization", "Content-Type"],

})
);

//this is my frontend code

const handleStatusChange=(bookingId, newStatus)=>{
console.log(`Changing status of booking ${bookingId} to ${newStatus}`);
console.log("Token being sent:", localStorage.getItem("token"));

axios.patch(`http://localhost:5001/api/updateBooking ... {bookingId}`, {
bookingStatus:newStatus
},{
headers:{
Authorization: `Bearer ${localStorage.getItem("token")}`

}
}).then((response)=>{
console.log("Status updated successfully:", response.data);
setSelectedStatus(newStatus); // Update local state to reflect the change

}).catch((error)=>{
console.error("Error updating status:", error);
alert("Failed to update booking status. Please try again.");
});
}

//and this is my jwt verification
import jwt from 'jsonwebtoken';
import dotenv from 'dotenv';
dotenv.config();

function verifyToken(req,res,next){
if(req.method==="OPTIONS"){
console.log("OPTIONS request - skipping auth");
return next();
}
const authHeader=req.headers.authorization
if(!authHeader){
return res.status(401).json({message:"no token provided"})
}
const token=authHeader.split(" ")[1]
try{
const decoded=jwt.verify(token,process.env.JWT_SECRET)
req.user=decoded;
next();

}
catch(err){
return res.status(401).json({message:"Unauthorized"})
}

}
export default verifyToken;


Подробнее здесь: https://stackoverflow.com/questions/798 ... m-the-same
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»