مرجع تخصصی برنامه نویسان

انجمن تخصصی برنامه نویسان فارسی زبان

کاربر سایت

ahmadzarei

عضویت از 1395/05/14

مشکل CORS در ارسال درخواست به کنترلر از VueJs

  • یکشنبه 17 شهریور 1398
  • 11:02
تشکر میکنم

سلام.

خسته نباشید.

یک پروژه نوشتم که اکشن Api داره و میخوام که به صورت POST اطلاعات ارسال و دریافت بشه.

از طریق Vuejs درخواست میدم ولی ارور CORS Policy رو میده.

همه ی راه های موجود رو هم تست کردم.

از این روش هم استفاده کردم, که همه ی درخواست ها رو بگیره ولی جوابی نگرفتم.

	<httpProtocol>
      <customHeaders>
        <add name="Access-Control-Allow-Origin" value="*" />
        <add name="Access-Control-Allow-Methods" value="*"/>
        <add name="Access-Control-Allow-Headers" value="*" />
      </customHeaders>
    </httpProtocol>

لطفا راهنمایی کنید.

با تشکر.

پاسخ های این پرسش

تعداد پاسخ ها : 3 پاسخ
کاربر سایت

AmirGhasemi

عضویت از 1392/02/25

  • یکشنبه 17 شهریور 1398
  • 15:47

سلام

یادش بخیر! پارسال همین ایام بود که همین مشکل را سر پروژه انگیولار خودم داشتم! زمین و زمان را بهم ریختم اما نشد که نشد!!!!!

تا اینکه دست غیب از آستین الهی بیرون آمد و اینگونه متذکر شد که:

1- تمامی تنظیماتی که بالا نوشته ای را از روی وب کانفیگ بردار و چیز اضافی توی وب کانفیگ نباشد

2- داخل WebApiConfig.cs  هم اگر قبلا چیزی نوشته ای برای فعال کردن CORS  آن را هم بردار و  آنجا هم چیزی ننویس

3- بالای کلاس هر Api  این عبارت را بصورت Attribute  بنویس

 [EnableCors(origins: "*", headers: "*", methods: "*")]

4- این using را هم به بالای کنترلرت اضافه کن

using System.Web.Http.Cors;

5- والسلام. التماس دعا

کاربر سایت

ahmadzarei

عضویت از 1395/05/14

  • یکشنبه 17 شهریور 1398
  • 15:59

اقا خیلی ممنون از راهنماییتون.

حالا این مشکل رفع شد منتها یه مشکل دیگه ای پیش اومد

ارور 405 Method not allowed رو چجور میشه رفع کرد

روی لوکال اوکیه متد POST ولی روی هاست نه وحتی بعضی متد های GET روی POST هم میاره

کاربر سایت

AmirGhasemi

عضویت از 1392/02/25

  • یکشنبه 17 شهریور 1398
  • 16:51

سلام مجدد

خب اول خدای را حمد و ثنا از باب اینکه قوه ای فهم ارزانی داشت ما  را به جهت حل مساله CORS

در ثانی عارضم به حضور انور منور شما که ارور 405 ناشی از درخواست هایی است که به سمت HTTP  می رود. همین که لوکال درست عمل می کنه اما وقتی میذاری روی هاست ارور بر می گردونه یعنی تنظیمات IIS  شما برای HTTP  درست نیست.

تنظیمات IIS  را بررسی فرما و از جمله لاگ های ویندوز سرور را.

تا درودی دیگر بدرود

کاربرانی که از این پست تشکر کرده اند

هیچ کاربری تا کنون از این پست تشکر نکرده است

اگر نیاز به یک مشاور در زمینه طراحی سایت ، برنامه نویسی و بازاریابی الکترونیکی دارید

با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)