سیامک
2 سال پیش توسط سیامک مطرح شد
2 پاسخ

اتصال به وب سرور محلی در vue

سلام
من یه سرور محلی با 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 داره؟


ثبت پرسش جدید
Abolfazl
تخصص : Frount-End Web Developer
@abolfazljamshidi101010 2 سال پیش مطرح شد
0

سلام این مشکلتون رو چجوری حل کردید؟


محمد شریف احمدی
تخصص : یک عدد برنامه نویس
@mrahmadi 2 سال پیش مطرح شد
0

این خطا به دلیل محدودیت های 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 استفاده کرده و وب سرور خود را پیاده سازی کنید.


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام