DOI Resolver + Metadata Delivery

راهنمای استفاده از مسیر DOI و دریافت متادیتا

این صفحه توضیح می‌دهد DOIهای IranDOI چگونه هم برای بازدیدکننده عادی به صفحه مقاله هدایت می‌شوند و هم برای سامانه‌ها، کتابخانه‌ها و ابزارهای پژوهشی می‌توانند متادیتا را در فرمت‌های استاندارد برگردانند.

نمونه رفتار DOI

یک آدرس، دو کاربرد

Active
برای کاربر عادی
باز کردن DOI در مرورگر، کاربر را مستقیم به صفحه فرود مقاله هدایت می‌کند.
برای سامانه‌ها و ابزارها
با ارسال Accept Header یا format می‌توان همان DOI را به JSON، CSL JSON، BibTeX و RIS تبدیل کرد.
https://irandoi.ir/doi/10.irandoi.2002/bahareadab.2025.18.7688
بخش اول

معرفی عمومی قابلیت و مزیت‌های منحصربه‌فرد آن

این قابلیت فقط یک لینک کوتاه نیست. DOI Resolver در IranDOI یک نقطه دسترسی پایدار می‌سازد که هم برای انسان قابل استفاده است و هم برای ماشین. نتیجه این است که مقاله شما در استناددهی، اشتراک‌گذاری، بایگانی و اتصال به سامانه‌های دانشگاهی، مسیر روشن‌تری دارد.

دسترسی سریع و پایدار

DOI همیشه یک نشانی پایدار برای مقاله می‌ماند؛ حتی اگر محل نگهداری محتوا در آینده تغییر کند.

قابل استفاده برای عموم و متخصصان

یک کاربر عادی فقط روی لینک کلیک می‌کند، ولی همان نشانی برای ابزارهای استنادی و کتابخانه‌ای هم قابل مصرف است.

آماده برای دانشگاه و نشر علمی

این امکان برای فرم‌های پژوهشی، مخزن‌های سازمانی، سامانه‌های مجلات و خدمات Auto-fill بسیار کاربردی است.

ردیابی بهتر استفاده

فقط بازدید واقعی مرورگر به‌عنوان کلیک ثبت می‌شود و درخواست‌های متادیتا آمار مصرف کاربر را مخدوش نمی‌کنند.

چه چیزی این ویژگی را متفاوت می‌کند؟

  • یک DOI واحد هم نقش آدرس پایدار را دارد و هم نقش درگاه داده‌های کتابشناختی.
  • خروجی‌ها برای استفاده عمومی، نرم‌افزارهای مدیریت منابع و سامانه‌های داخلی از هم تفکیک شده‌اند.
  • داده‌ها بدون نیاز به صفحه میانی اضافه، مستقیماً از همان DOI قابل دریافت هستند.
  • الگوی رفتاری آن با استانداردهای رایج DOI در اکوسیستم بین‌المللی هم‌راستا است.

کاربردهای رایج

وب‌سایت مجله

هدایت خواننده از DOI به صفحه مقاله با همان نشانی رسمی انتشار.

فرم‌های پژوهشی

پر کردن خودکار عنوان، نویسندگان و اطلاعات انتشار با یک DOI.

مدیران کتابخانه

دریافت فرمت‌های آماده برای تبادل داده با مخازن و ابزارهای استنادی.

توسعه‌دهندگان

ساخت اتصال‌های سبک با URL ثابت و فرمت‌های خروجی شناخته‌شده.

بخش دوم

اطلاعات فنی، روش استفاده، مزایا و نمونه کد

اگر می‌خواهید DOI را در سامانه دانشگاهی، سرویس داخلی، فرم ثبت مقاله یا ابزار پژوهشی مصرف کنید، از الگوهای زیر استفاده کنید.

آدرس‌های مجاز

Resolver عمومی
GET https://irandoi.ir/doi/10.irandoi.{journal_id}/{short}
API اختصاصی JSON
GET https://irandoi.ir/api/doi/10.irandoi.{journal_id}/{short}
نمونه واقعی
https://irandoi.ir/doi/10.irandoi.2002/bahareadab.2025.18.7688

فرمت‌های پشتیبانی‌شده

روش درخواست فرمت خروجی کاربرد
?format=json Iran DOI JSON مصرف داخلی، فرم‌ها و پنل‌ها
Accept: application/vnd.citationstyles.csl+json CSL JSON نرم‌افزارهای استناد و Citation Tools
Accept: application/x-bibtex BibTeX LaTeX و مدیران منابع
Accept: application/x-research-info-systems RIS انتقال به EndNote و ابزارهای مشابه
Accept: text/x-bibliography متن کتابشناختی نمایش سریع در رابط کاربری

رفتار فنی مهم

  • درخواست HTML کاربر را به صفحه مقاله redirect می‌کند و کلیک ثبت می‌شود.
  • درخواست metadata کلیک را افزایش نمی‌دهد و فقط داده برمی‌گرداند.
  • اگر فرمت ناشناخته باشد پاسخ 406 Not Acceptable برمی‌گردد.
  • اگر DOI پیدا نشود، برای درخواست متادیتا پاسخ 404 JSON برمی‌گردد.
  • اولویت تشخیص فرمت: format سپس Accept Header و در نهایت html.

نمونه کدها

cURL - دریافت CSL JSON
curl -L \
  -H "Accept: application/vnd.citationstyles.csl+json" \
  "https://irandoi.ir/doi/10.irandoi.2002/bahareadab.2025.18.7688"
JavaScript - دریافت JSON اختصاصی
const response = await fetch("https://irandoi.ir/api/doi/10.irandoi.2002/bahareadab.2025.18.7688", {
  headers: {
    "Accept": "application/json"
  }
});

const data = await response.json();
console.log(data.identifier.value);
console.log(data.title);
Python - دریافت BibTeX
import requests

url = "https://irandoi.ir/doi/10.irandoi.2002/bahareadab.2025.18.7688"
headers = {"Accept": "application/x-bibtex"}

response = requests.get(url, headers=headers, timeout=15)
print(response.text)
PHP - دریافت RIS
$client = new \GuzzleHttp\Client();

$response = $client->get("https://irandoi.ir/doi/10.irandoi.2002/bahareadab.2025.18.7688", [
    'headers' => [
        'Accept' => 'application/x-research-info-systems',
    ],
]);

echo (string) $response->getBody();

مزایای فنی برای یکپارچه‌سازی

مسیر ثابت

الگوی URL مشخص است و بدون پیچیدگی در سرویس‌ها، فرم‌ها و افزونه‌ها استفاده می‌شود.

چند فرمت از یک مبدا

برای هر DOI فقط یک آدرس اصلی نیاز دارید و نوع داده را با header مشخص می‌کنید.

سازگار با اتوماسیون

دریافت داده بدون نیاز به scraping انجام می‌شود و خروجی‌ها برای پردازش ماشینی مناسب‌اند.

تفکیک رفتار کاربر و ماشین

آمار کلیک فقط برای بازدید واقعی کاربر ثبت می‌شود و گزارش‌ها دقیق‌تر می‌مانند.

راهنمای سریع استفاده

  1. 1. DOI مقاله را در الگوی 10.irandoi.{journal_id}/{short} شناسایی کنید.
  2. 2. اگر کاربر نهایی دارید، همان DOI را در مرورگر باز کنید.
  3. 3. اگر داده ساختاریافته می‌خواهید، Accept Header یا format مناسب بفرستید.
  4. 4. برای اتصال داخلی و فرم‌ها، مسیر /api/doi/... را برای دریافت JSON اختصاصی استفاده کنید.
پرسش‌های پرتکرار

درباره راهنمای DOI

پاسخ‌های کوتاه و مستقیم، درک محتوا را برای کاربران و موتورهای پاسخ‌محور ساده‌تر می‌کند.

3 پاسخ سریع
این راهنما برای چه کسانی نوشته شده است؟
برای کاربرانی که می‌خواهند DOI مقاله را سریع پیدا کنند، درست باز کنند یا از مسیر API/نمایش عمومی استفاده کنند.
اگر DOI را در مرورگر باز کنم چه می‌شود؟
سامانه کاربر را به مقصد نهایی هدایت می‌کند یا در صورت نیاز دادهٔ ساختاریافتهٔ مرتبط را برمی‌گرداند.
چرا از Accept Header یا format استفاده می‌شود؟
برای اینکه بتوانید همان شناسه را هم به‌صورت انسانی ببینید و هم در قالب JSON ساختاریافته دریافت کنید.