آموزش جاوااسکریپت › انجمن ها › react native › مشکل درخواست api با axios
برچسب ها: api, axios, react_native
- این موضوع 2 پاسخ، 2 کاربر را دارد و آخرین بار در 2 سال، 5 ماه پیش بدست m.livani.live بهروزرسانی شده است.
-
نویسندهنوشتهها
-
m.livani.liveمشارکت کننده
سلام بچه ها خسته نباشید. میخواستم از api سایتی استفاده کنم در react native. اول اینکه وقتی url درخواستی رو در مرورگر میزنیم ازمون user pass میخواد:
برای دریافت از axios استفاده کردم به صورت زیر:JavaScript123456789101112axios.create({withCredentials: true,baseURL: 'https://site.com/api/products?company_id=198',timeout: 10000,headers: {"Accept": "application/json","Content-Type": "application/json",'Authorization': 'Basic username:password'}});اما همچین خطایی بهم میده:
کلمه ی Access-Control-Allow-Origin رو در اینترنت جستجو کردم چنتا سایت رو خوندم و کد رو به صورت زیر تغییر دادم:JavaScript12345678910111213axios.create({withCredentials: true,baseURL: 'https://hornb2b.com/',timeout: 10000,headers: {'Access-Control-Allow-Origin': '*',"Accept": "application/json","Content-Type": "application/json",'Authorization': 'Basic username:password'}});اما بازهم همون خطا رو بهم میده… لطفا کمکم کنید. تشکر…
مهدی حسن زادهمدیرکلاگر خطای cors origin دارین باید سمت سرور برطرف بشه
میتونید از اکستنشن کروم استفاده کنید برای devlopment
https://chrome.google.com/webstore/detail/allow-cors-access-control/lhobafahddgcelffkeicbaginigeejlfm.livani.liveمشارکت کنندهسلام دوست عزیز و ممنون به خاطر پاسختون. من از یک روشی استفاده کردم جواب گرفتم. اما نمیدونم این روش معایبی داره یا نه؟ و اگر معایبی داره لطفا بگید.:
JavaScript123456789101112131415const authh = base64.encode('user:pass');const proxyurl = "https://cors-anywhere.herokuapp.com/";const url = 'https://hornb2b.com/api/products?company_id=127&lang_code=fa';fetch(proxyurl + url,{ method:'GET',mode: 'cors',headers:{'Authorization': <code>Basic ${authh}</code>},})با استفاده از این url قبل url درخواست api مشکل حل شد و محتوا رو تونستم بگیرم. اما نمیدونم کار درستیه یا نه
-
نویسندهنوشتهها