مهدی
2 سال پیش توسط مهدی مطرح شد
5 پاسخ

استفاده از API سایت دیگه در پروژه خود

سلام شب بخیر.
میخواستم از api ی سایت تو پروژه خودم استفاده کنم، قراره از سایت دیگه لحظه ای نشون بده مثل رمزارز ها که مثلا حجم بازار ، قیمت، رتبه و .... داره ممنون میشم راهنماییم کنید یا اگر لینک آموزشی هست


ثبت پرسش جدید
محمدرضا
تخصص : <programmer/>
@mrjazini.ir 2 سال پیش مطرح شد
1

سلام
بستگی به زبانتون داره . اگه javascript هست باید با fetch یا XMLHttpRequest کار کنی
اگه php با curl
کتابخونه axios هم برای جاوااسکریپت هست


ASPgo
تخصص : HTML، CSS، PHP و JS، طراح قالب...
@asp.gosk 2 سال پیش آپدیت شد
0

برای Django از این مقاله استفاده کن
پیشنهاد من اینکه اگه قراره فقط قیمت ها و مواردی که گفتی رو به کاربر ها نشون بدی به نظر من بهتره تو فرانت(JS) کد هاش رو بنویسی. با JS میتونی به شکل AJAX طراحی کنی و کاری کنی که بدون رفرش صفحه آپدیت بشه.
اگه میخوای از JS استفاده کنی باید با XMLHttpRequest() یا Fetch() با [API ارتباط برقرار کنی. خروجی اکثر این API ها JSON و XML هست و باید کار با JSON و XML رو بلد باشی
من چند وقت پیش یه API برای قیمت ارز ها پیدا کردم و برای تستش یه سایت خیلی ساده زدم به عنوان نمونه کد هاش رو قرار میدم
لینک API
کد های HTML:


<html lang="fa">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>قیمت لحظه ای بیت کوین</title>
    <link rel="stylesheet" href="./styles.css">
</head>
<body>
    <div class="btc">
        <img class="img" src="./bitcoin.png">
        <div class="price">
            <span class="usd-price">Bitcoin Price</span>
            <span class="ri-price">Rial:</span>
        </div>
    </div>

    <script src="./main.js"></script>
</body>
</html>

کد های main.js :

const el_usd_price = document.querySelector('.usd-price');
const el_ri_price = document.querySelector('.ri-price');
var usd_price;

var request = new XMLHttpRequest();
request.open('GET', 'https://min-api.cryptocompare.com/data/price?fsym=BTC&tsyms=USD');
request.onreadystatechange = intervalID;
var intervalID = window.setInterval(refresh, 500);

function refresh() {
    if (request.status == 200 && request.readyState == 4) {
        usd_price = JSON.parse(request.responseText).USD;
        el_usd_price.textContent = usd_price + '$';
        el_ri_price.textContent = Math.floor(usd_price * 26 * 10) + ' ريال';
    }
    request.open('GET', 'https://min-api.cryptocompare.com/data/price?fsym=BTC&tsyms=USD');
    request.send();
}

برای قیمت دلار از API استفاده نکردم همینطوری فرضی زدم 26 تومن
این مواردی که تو نیاز داری فکر نکنم API رایگانی براش وجود داشته باشه.
خروجی کار:
 تصویر


مهدی
تخصص : تازه کار
@mehdi01 2 سال پیش مطرح شد
0

@asp.gosk
ی سایت دارم طراحی میکنم تقریبا مثل arzdigitall.ir و مسئله ای که برام پیش اومده اینه که چجوری وقتی یدونه ارز وارد میکنم برای هرکدوم، این قیمت و ... خاص خودش رو دربیارم .


مهدی
تخصص : تازه کار
@mehdi01 2 سال پیش مطرح شد
0

@mrjazini.ir
ممنونم از راهنماییت


ASPgo
تخصص : HTML، CSS، PHP و JS، طراح قالب...
@asp.gosk 2 سال پیش مطرح شد
0

این API ها اکثرا فرمت آدرسشون مثلا به این شکله:

site.com/api.php?cry=btc // BTC Price
site.com/api.php?cry=eth // ETH Price

البته یکم GET هاشون بیشتره
مثلا همین API من معرفی کردم

https://min-api.cryptocompare.com/data/price?fsym=BTC&tsyms=USD // BTC Price
https://min-api.cryptocompare.com/data/price?fsym=eth&tsyms=USD // ETH Price

همونطور کهمیبینی فقط GET fsym متفاوت بود. اولی قیمت بیتکوین و دومی قیمت اتریوم هست.
زمانی که سایت رو طراحی میکنی میتونی با JS بری GET که مربوط به ارز رو پیدا میکنی میریزی تو یه متغیر بعد به جای نوشتن دستی مثلا

https://min-api.cryptocompare.com/data/price?fsym=BTC&tsyms=USD

میای بخشیش که قراره تغییر کنه(GET fsym) رو به جای اینکه دستی بنویسی اون متغیری که GET مربوط به ارز رو توش ریختی رو مینویسی.
مثلا همون نمونه کدی که من فرستادم اگه GET fsym رو توش مثلا به Doge تغییر بدم دیگه قیمت Doge رو نمایش میده
حالا بسته به فریم ورک، روش، API و زبانی که برای ساخت صفحه ها استفاده میکنی متفاوته


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام