با سلام خدمت کاربران گرامی سایت پی وی لرن و کاربرانی که علاقمند به فراگیری دوره آموزش کوردوا هستند. در جلسه گذشته به معرفی پلاگین و کاربردهای آن پرداختیم در این جلسه آموزش کار با پلاگین whitelist در کوردوا را ارائه می نماییم.
پلاگین whitelist به ما امکان اجرای سیاست لیست سفید (whitelist policy) را برای app’s navigation می دهد.
هنگام ساخت یک پروژه جدید در کوردوا پلاگین whitelist به صورت پیش فرض نصب شده و اجرا می شود.
می توانید فایل config.xml را باز کنید تا تنظیمات پیش فرض allow-intent دلخواه ارائه شده توسط کوردوا را ببینید.
در مثال ساده زیر می توانید ببینید که پیوندی به برخی URL های خارجی ایجاد شده است.
این کد در config.xml قرار دارد.
ناوبری به فایل: // URL ها به طور پیش فرض مجاز است.
1 | <allow-navigation href = "http://example.com/*" /> |
علامت asterix ، *، اجازه استفاده از فهرست ناوبری را به مقادیر چندگانه می دهد.
در مثال زیر، اجازه ناوبری را تمام زیر دامنه example.com داده شده است.
چنین مورد مشابهی می تواند برای پروتکل یا پیشوند به میزبان استفاده گردد.
1 | <allow-navigation href = "*://*.example.com/*" /> |
علاوه بر این یک عنصر allow-intent وجود دارد که برای مشخص سازی URLs هایی که سیستم را باز می کنند؛ مورد استفاده قرار می گیرد.
در config.xml می توان دید که کوردوا در حال حاضر به اکثر لینک های مورد نیاز اجازه ایجاد شدن داده است.
هنگامی که به درون فایل config.xml نگاهی بیندازید؛ یک عنصر <access origin=”*” /> را در آن خواهید دید.
این عنصر به همه network requests اجازه می دهد تا به برنامه ما از طریقCordova hooks متصل شوند.
اگر می خواهید فقط requests های خاصی را مجاز کنید، می توانید آن را از config.xml حذف کنید و خودتان آن را تنظیم نمایید.
در این بخش نیز اصول و موارد مشابهی نظیر مثال قبل مورد استفاده قرار می گیرد.
1 | <access origin = "http://example.com" /> |
کد بالا اجازه ایجاد همه network requests ها را از http://example.com می دهد.
می توانید سیاست امنیتی فعلی برنامه تان را در عنصر head در index.html ببینید.
1 2 3 | <meta http-equiv = "Content-Security-Policy" content = "default-src 'self' data: gap: https://ssl.gstatic.com 'unsafe-eval'; style-src 'self' 'unsafe-inline'; media-src *"> |
تنظیمات پیکربندی به شکل پیش فرض صورت گرفته اند.
اگر می خواهید همه چیز را از همان مبدا و example.com شروع کنید، می توانید از کد زیر استفاده کنید.
1 | <meta http-equiv = "Content-Security-Policy" content = "default-src 'self' foo.com"> |
علاوه بر این می توانید اجازه هر چیزی از جمله CSS و جاوا اسکریپت را بدهید و آن ها را به همان منبع محدود نمایید.
1 2 3 | <meta http-equiv = "Content-Security-Policy" content = "default-src *; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval'"> |
از این جا که این آموزش برای دوره مبتدی تهیه شده است توصیه می کنیم که از آپشن های پیش فرض کوردوا استفاده نمایید.
پس از تسلط بر کوردوا می توانید از مقادیر متفاوتی استفاده کنید.
در این جلسه آموزش کار با پلاگین whitelist در کوردوا ارائه گردید.
در جلسه بعد که آخرین جلسه از دوره آموزش کوردوا است به صورت خلاصه چند توصیه کاربردی در کوردوا را به شما ارائه خواهیم کرد.
با پی وی لرن همراه باشید.