سلام
من یه سرور محلی با xampp ایجاد کردم و زمانی که می خوام از vue به سرور وصل بشم این خطا رو میده
Access to fetch at 'http://localhost:8081/test/index.php' from origin 'http://localhost:8080' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled.
vue روی port 8080 و وب سرور روی 8081 است و متصل نمیشن
چطور باید برطرفش کنم؟
و آیا vue پلاگینی برای ایجاد وب سروری نظیر apache داره؟
این خطا به دلیل محدودیت های Cross-Origin Resource Sharing (CORS) است که به امنیت ارتباطات بین سرور و مرورگر کمک می کند. به طور کلی، این محدودیت هنگامی که یک درخواست AJAX از نشانی مبدأی متفاوت از سرور مقصد فرستاده می شود، فعال می شود.
برای حل این مشکل در vue، شما می توانید پکیج vue-cli-plugin-proxy را به پروژه خود اضافه کنید و سپس فایل vue.config.js را با محتوای زیر بسازید:
module.exports = {
devServer: {
proxy: 'http://localhost:8081'
}
}
این کد پروکسی کردن درخواست های AJAX را به آدرس http://localhost:8081 اضافه می کند که نشانی وب سرور شما است. با این کار، درخواست های AJAX از طریق آدرس proxy ارسال شده و به همین دلیل مشکل CORS برطرف می شود.
همچنین، Vue یک وب سرور ندارد، بلکه فقط یک سرور توسعه محلی برای توسعه و تست پروژه های خود دارد. برای استفاده از وب سرور، شما باید از پکیج هایی مانند Express یا Koa استفاده کرده و وب سرور خود را پیاده سازی کنید.
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟