راکت

api and ajax

13 پاسخ

سلام. من دو فایل json & .xml. درست کردم و در یکی از صفحاتم اومدم با کد مربوطه هر بار یکی شون را فراخوانی شون کردم(و از نظر دستوری هیچ مشکلی نداشتم) اما وقتی خواستم اجرا بگیرم مرورگر به من خطای زیر رو می گرفت("Reason: CORS request not http") .
سرچ کردم و cors را به مرورگرم اضافه و فعال کردم اما همچنان این مشکل برام موجوده . لطفا کسی میتونه من را راهنمایی کنه چطور این مشکل را حل کنم

@ali.bayat
@hesammousavi

ثبت پرسش جدید

پاسخ‌ها

13
میلاد-م
میلاد-م
@milad

تخصص: توسعه‌دهنده رابط کاربری - Front-End

سلام
قبل از نشانی درخواستی برای api تون، این رو اضافه کنید:

https://cors-anywhere.herokuapp.com/

مثال:

const res = await fetch(`https://cors-anywhere.herokuapp.com/https://www.roocket.ir/api/search?key=${key}&q=${this.query}`);
ریحانه
ریحانه
@reihanehmarijani

تخصص: لیسانس IT و کارآموز برنامه نویسی

ممنون کدتون را نوشتم اما سایت من رو هاست نیست و خطای زیر را من گرفت
Invalid host: file
حالا باید چیکار کنم میشه راهنمایی کنید لطفا
@milad

شاید پاسخ شما همین‌جا باشد

Mohammad Masoudi
Mohammad Masoudi
@pesaregorg

تخصص: Developer

@reihanehmarijani
میشه کد مربوطه رو ببینیم؟

میلاد-م
میلاد-م
@milad

تخصص: توسعه‌دهنده رابط کاربری - Front-End

این افزونه ها رو یکی یکی نصبش کنید. و سپس فعال کنید. اگر اولی کار نکرد، برید سراغ دومی.
https://chrome.google.com/webstore/detail/allow-cors-access-control/lhobafahddgcelffkeicbaginigeejlf?hl=en
https://chrome.google.com/webstore/detail/cors-unblock/lfhmikememgdcahcdlaciloancbhjino?hl=en

ببینید درست میشه. نتیجه رو بفرمایید.

میلاد-م
میلاد-م
@milad

تخصص: توسعه‌دهنده رابط کاربری - Front-End

ریحانه
ریحانه
@reihanehmarijani

تخصص: لیسانس IT و کارآموز برنامه نویسی

کدی که نوشتم اینه
من دو تا لینکی که گذاشتید را اضافه کردم مشکل حل نشد و لینک سومی که گذاشتید رو دیروز که سرچ میکردم دیدم و CORS را اضافه کردم اما واقعیتش نفهمیدم کجا باید کد ها رو وارد کنم به خاطر همین مزاحم شما دوستان شدم
@milad
@pesaregorg

<script src="jquery/jquery.js"></script>
<script>

$(function () {
    $.ajax({
        url: "books.xml",
        method: "get",
        dataType: "xml",
        success : function (response){
           $("#rest").text(response);
        }
    })

})

</script>
 <div id="rest">sample</div>
میلاد-م
میلاد-م
@milad

تخصص: توسعه‌دهنده رابط کاربری - Front-End

کدهارو به درستی قرار بدید:
https://roocket.ir/faq پرسش 9

Mohammad Masoudi
Mohammad Masoudi
@pesaregorg

تخصص: Developer

این کد رو به header اضافه کنید

Access-Control-Allow-Origin: *

به این لینک هم سر بزنید
https://zinoui.com/blog/cross-domain-ajax-request

ریحانه
ریحانه
@reihanehmarijani

تخصص: لیسانس IT و کارآموز برنامه نویسی

بله .کد ها را در همون پیام قبلی مرتب کردم
@milad

میلاد-م
میلاد-م
@milad

تخصص: توسعه‌دهنده رابط کاربری - Front-End

@reihanehmarijani
واللا کدهاتون بهمریخته هستش همچنان

ریحانه
ریحانه
@reihanehmarijani

تخصص: لیسانس IT و کارآموز برنامه نویسی

بله حق با شماست الان درست شد
@milad

میلاد-م
میلاد-م
@milad

تخصص: توسعه‌دهنده رابط کاربری - Front-End

@reihanehmarijani
زنده باشید.
بله الان نحوه قرار دادن کدهاتون درست شدش. ولی خود کدها مشکل دارن، باز بهم ریخته هستند.

امیدوارم مشکل اصلی تون هم رفع شده باشه تا الان.

علی بیات
علی بیات
@ali.bayat

تخصص: توسعه دهنده ارشد وب

درود

CORS کوتاه‌شده‌ی عبارت Cross-origin resource sharing است. محل کاربرد CORS در مرورگرهای مدرن و برای بررسی اجازه‌ی دسترسی از راه دور به منابع و سرویس‌های تحت وب است.
برای مثال در حالت عادی امکان استفاده از فایل‌های فونت از روی یک سرور دیگر وجود ندارد یا امکان ارسال یک درخواست AJAX از روی دامنه‌ای غیر از دامنه‌ی فعلی ممکن نیست.CORS ابزاری است که روشی برای حذف این محدودیت در اختیار برنامه‌نویسان قرار می‌ده.

اطلاعات بیشتر در لینک زیر:
https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS

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

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