راهنمای استفاده از مسیر DOI و دریافت متادیتا
این صفحه توضیح میدهد DOIهای IranDOI چگونه هم برای بازدیدکننده عادی به صفحه مقاله هدایت میشوند و هم برای سامانهها، کتابخانهها و ابزارهای پژوهشی میتوانند متادیتا را در فرمتهای استاندارد برگردانند.
نمونه رفتار DOI
یک آدرس، دو کاربرد
Accept Header یا format میتوان همان DOI را به JSON، CSL JSON، BibTeX و RIS تبدیل کرد.
معرفی عمومی قابلیت و مزیتهای منحصربهفرد آن
این قابلیت فقط یک لینک کوتاه نیست. DOI Resolver در IranDOI یک نقطه دسترسی پایدار میسازد که هم برای انسان قابل استفاده است و هم برای ماشین. نتیجه این است که مقاله شما در استناددهی، اشتراکگذاری، بایگانی و اتصال به سامانههای دانشگاهی، مسیر روشنتری دارد.
دسترسی سریع و پایدار
DOI همیشه یک نشانی پایدار برای مقاله میماند؛ حتی اگر محل نگهداری محتوا در آینده تغییر کند.
قابل استفاده برای عموم و متخصصان
یک کاربر عادی فقط روی لینک کلیک میکند، ولی همان نشانی برای ابزارهای استنادی و کتابخانهای هم قابل مصرف است.
آماده برای دانشگاه و نشر علمی
این امکان برای فرمهای پژوهشی، مخزنهای سازمانی، سامانههای مجلات و خدمات Auto-fill بسیار کاربردی است.
ردیابی بهتر استفاده
فقط بازدید واقعی مرورگر بهعنوان کلیک ثبت میشود و درخواستهای متادیتا آمار مصرف کاربر را مخدوش نمیکنند.
چه چیزی این ویژگی را متفاوت میکند؟
- یک DOI واحد هم نقش آدرس پایدار را دارد و هم نقش درگاه دادههای کتابشناختی.
- خروجیها برای استفاده عمومی، نرمافزارهای مدیریت منابع و سامانههای داخلی از هم تفکیک شدهاند.
- دادهها بدون نیاز به صفحه میانی اضافه، مستقیماً از همان DOI قابل دریافت هستند.
- الگوی رفتاری آن با استانداردهای رایج DOI در اکوسیستم بینالمللی همراستا است.
کاربردهای رایج
هدایت خواننده از DOI به صفحه مقاله با همان نشانی رسمی انتشار.
پر کردن خودکار عنوان، نویسندگان و اطلاعات انتشار با یک DOI.
دریافت فرمتهای آماده برای تبادل داده با مخازن و ابزارهای استنادی.
ساخت اتصالهای سبک با URL ثابت و فرمتهای خروجی شناختهشده.
اطلاعات فنی، روش استفاده، مزایا و نمونه کد
اگر میخواهید DOI را در سامانه دانشگاهی، سرویس داخلی، فرم ثبت مقاله یا ابزار پژوهشی مصرف کنید، از الگوهای زیر استفاده کنید.
آدرسهای مجاز
فرمتهای پشتیبانیشده
| روش درخواست | فرمت خروجی | کاربرد |
|---|---|---|
| ?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 -L \
-H "Accept: application/vnd.citationstyles.csl+json" \
"https://irandoi.ir/doi/10.irandoi.2002/bahareadab.2025.18.7688"
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);
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)
$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. DOI مقاله را در الگوی
10.irandoi.{journal_id}/{short}شناسایی کنید. - 2. اگر کاربر نهایی دارید، همان DOI را در مرورگر باز کنید.
- 3. اگر داده ساختاریافته میخواهید،
Accept Headerیاformatمناسب بفرستید. - 4. برای اتصال داخلی و فرمها، مسیر
/api/doi/...را برای دریافت JSON اختصاصی استفاده کنید.
درباره راهنمای DOI
پاسخهای کوتاه و مستقیم، درک محتوا را برای کاربران و موتورهای پاسخمحور سادهتر میکند.