tigtools

تجزیه‌کننده URL

یک URL جای‌گذاری کنید تا هر یک از بخش‌های آن و جدول رمزگشایی‌شدهٔ پارامترهای query را ببینید. پارامترها را ویرایش کنید و URL بازسازی‌شده را کپی کنید.

در مرورگر شما اجرا می‌شود بدون ثبت‌نام

نحوه استفاده

  1. یک URL کامل شامل https:// یا scheme دیگر جای‌گذاری کنید.
  2. جدول اجزا را بخوانید. از دکمه‌های کپی برای برداشتن یک بخش، مانند نام میزبان یا مسیر استفاده کنید.
  3. پارامترهای query را بررسی کنید: مقادیر به‌صورت رمزگشایی‌شده و با ترتیب اصلی نمایش داده می‌شوند و نام‌های تکراری نگه داشته می‌شوند.
  4. پارامترها را تغییر دهید، اضافه یا حذف کنید، سپس URL بازسازی‌شده را کپی کنید.

نحوه کار

این ابزار از تجزیه‌گر URL داخلی مرورگر شما استفاده می‌کند (استاندارد WHATWG URL)، بنابراین نتیجه با کاری که مرورگرها هنگام دنبال‌کردن پیوند انجام می‌دهند یکسان است. این ابزار URL را به همان شکل عادی‌سازی می‌کند: طرح و نام میزبان با حروف کوچک نوشته می‌شوند، درگاه‌های پیش‌فرض مانند 443 برای https حذف می‌شوند و مسیرهایی مانند /a/../b حل می‌شوند.

بخش‌های نمایش‌داده‌شده عبارت‌اند از: پروتکل (طرح)، نام کاربری و گذرواژه اگر URL شامل اعتبارنامه باشد، میزبان همراه با درگاه آن، نام میزبان به‌تنهایی، درگاه، مسیر، رشتهٔ جست‌وجو که با ? شروع می‌شود، بخش fragment که با # شروع می‌شود، و مبدأ (طرح، میزبان و درگاه) که مرورگرها برای بررسی‌های امنیتی هم‌مبدأ از آن استفاده می‌کنند. گذرواژه تا زمانی که روی دکمهٔ چشم کلیک کنید پنهان است.

پارامترهای جست‌وجو با URLSearchParams خوانده می‌شوند. مقادیر درصدگشایی می‌شوند و + به‌عنوان فاصله خوانده می‌شود، همان‌طور که در ارسال فرم HTML رخ می‌دهد. پارامترهایی که بیش از یک بار ظاهر می‌شوند، مانند size=42&size=43، جداگانه و به‌ترتیب فهرست می‌شوند، زیرا بسیاری از سرورها آن‌ها را به‌صورت فهرست می‌خوانند.

وقتی پارامترها را ویرایش می‌کنید، رشتهٔ جست‌وجو نیز با URLSearchParams بازسازی می‌شود. این کار می‌تواند نگارش بخش‌هایی را که ویرایش نکرده‌اید تغییر دهد: فاصله به‌صورت + نوشته می‌شود و نویسه‌هایی مانند ' یا ~ ممکن است به شکل دیگری escape شوند. معنا برای سرورهایی که رشتهٔ جست‌وجوی کدگذاری‌شده با فرم را می‌خوانند یکسان می‌ماند.

نام‌های میزبان با نویسه‌های غیر ASCII (نام‌های دامنهٔ بین‌المللی) توسط تجزیه‌گر URL به punycode تبدیل می‌شوند؛ برای مثال münchen.de به xn--mnchen-3ya.de تبدیل می‌شود. این ابزار هر دو شکل را نشان می‌دهد.

نمونه‌ها

بررسی پارامترهای ردیابی

یک پیوند کمپین مانند https://example.com/?utm_source=newsletter&utm_medium=email&utm_campaign=spring+sale را جای‌گذاری کنید تا هر مقدار utm_ به‌صورت رمزگشایی‌شده دیده شود («spring sale»)، مواردی را که نیاز ندارید حذف کنید و پیوند تمیز را کپی کنید.

اشکال‌زدایی URL تغییرمسیر

یک پیوند ورود شامل redirect=https%3A%2F%2Fapp.example.com%2Fdashboard%3Ftab%3D2 است. جدول پارامترها مقدار رمزگشایی‌شدهٔ https://app.example.com/dashboard?tab=2 را نشان می‌دهد؛ بنابراین می‌توانید دقیقاً ببینید کاربر به کجا هدایت می‌شود.

یافتن مبدأ برای CORS

برای https://api.example.com:8443/v1/users?id=7 مبدأ https://api.example.com:8443 است. دقیقاً همین رشته — بدون مسیر یا اسلش انتهایی — باید با سرآیند Access-Control-Allow-Origin مطابقت داشته باشد.

پرسش‌های متداول

تفاوت بین host و hostname چیست؟

نام میزبان فقط دامنه یا نشانی IP است (example.com). میزبان زمانی که URL یک درگاه غیرپیش‌فرض را مشخص کرده باشد، شامل درگاه نیز می‌شود (example.com:8443). برای https://example.com:443/ هر دو example.com هستند، زیرا 443 درگاه پیش‌فرض https است و حذف می‌شود.

چرا URL من خطای مربوط به نبود scheme را نشان می‌دهد؟

بدون طرحی مانند https://، «example.com/page» یک URL مطلق نیست، و حتی «example.com:8080» به‌عنوان URL با طرح «example.com» در نظر گرفته می‌شود. این ابزار پیشنهاد می‌کند که https:// را برای شما اضافه کند.

چرا + در مقادیر پارامتر به‌صورت فاصله نمایش داده می‌شود؟

رشته‌های query معمولاً به‌صورت دادهٔ فرم (application/x-www-form-urlencoded) خوانده می‌شوند که در آن + نشان‌دهندهٔ فاصله است. علامت + واقعی باید به‌صورت %2B ارسال شود. URLSearchParams و بیشتر چارچوب‌های سرور این‌گونه رفتار می‌کنند.

چه اتفاقی برای پارامترهای هم‌نام می‌افتد؟

همهٔ آن‌ها با همان ترتیب اصلی نگه داشته می‌شوند و هرکدام ردیف جداگانه‌ای دارد. حذف یک ردیف فقط همان تکرار را حذف می‌کند.

punycode چیست؟

DNS فقط از نام‌های میزبان ASCII پشتیبانی می‌کند؛ بنابراین نام‌های دامنهٔ بین‌المللی به‌صورت برچسب‌هایی رمزگذاری می‌شوند که با xn-- آغاز می‌شوند. برای مثال، bücher.example به‌صورت xn--bcher-kva.example ارسال می‌شود. مرورگرها معمولاً شکل خوانا را در نوار آدرس نمایش می‌دهند.

حریم خصوصی

URL توسط تجزیه‌گر داخلی مرورگر شما تجزیه می‌شود. هیچ درخواستی به آن URL ارسال نمی‌شود و آنچه جای‌گذاری می‌کنید بارگذاری، ذخیره یا در تحلیل‌ها گنجانده نمی‌شود.