بکندباز

راهنمای ارسال درخواست به ابزار “تبدیل سریع کد به API”

ابزار تبدیل سریع کد به API برای سرعت بخشیدن به مسیر توسعه برنامه نویسان عزیز و جلوگیری از درگیری با مسائل سمت سرور و … آماده شده است. همچنین با استفاده از این ابزار می توانید به سادگی کد های مختلف را با زبان های مختلف نوشته و با API به همدیگر پیوند دهید.

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

 ویژگی‌های کلیدی این ابزار:

  • بدون نیاز به سرور: تمامی فرآیندها به‌صورت آنلاین و بدون نیاز به هاست یا سرور اختصاصی انجام می‌شود.
  • رابط کاربری ساده: با استفاده از ویرایشگر آنلاین سایت، می‌توانید کدهای خود را به‌راحتی وارد کرده و API مربوطه را فعال کنید.
  • پشتیبانی از زبان‌های مختلف: علاوه بر پایتون، این ابزار از زبان‌های برنامه‌نویسی متنوعی پشتیبانی می‌کند که امکان اتصال کدهای مختلف را از طریق API فراهم می‌سازد.
  • سرعت بالا: در کمتر از ۵ دقیقه می‌توانید کد خود را به API تبدیل کرده و در پروژه‌های مختلف از آن استفاده کنید.
  • پرداخت به ازای استفاده: بدون نیاز به هزینه های سنگین ماهانه هاست و سرور، فقط به ازای هر درخواست، هزینه پرداخت می کنید.

با ثبت نام در سایت، 100 درخواست رایگان به صورت هدیه دریافت می کنید که میتوانید برای تست API های سایت استفاده کنید. پس از آن، برای هر درخواست 10 تومان از شارژ حساب شما کسر خواهد شد.

دریافت کلید API 

بیایید با یک مثال این موضوع را بررسی کنیم:

فرض کنید با پایتون کدی برای تولید رمز عبور تصادفی ساخته ایم و میخواهیم از آن در وردپرس استفاده کنیم (البته این کار را با PHP و در وردپرس نیز می توان به سادگی انجام داد و معمولاً برای کارهایی مثل آنالیز داده های فروش و … میتوانیم از این ابزار استفاده کنیم، اما برای آموزش این مثال ساده را در نظر گرفتیم)

کد پایتون مربوطه:

import secrets
import string

def generate_password(length=12, min_digits=2, min_special=2):
    if length < min_digits + min_special:
        raise ValueError("Length too short for the required number of digits and special characters.")

    # کاراکترهای مورد نیاز
    letters = string.ascii_letters
    digits = string.digits
    special_chars = "!@#$%^&*()"

    # انتخاب تصادفی
    password = [
        secrets.choice(letters) for _ in range(length - min_digits - min_special)
    ] + [
        secrets.choice(digits) for _ in range(min_digits)
    ] + [
        secrets.choice(special_chars) for _ in range(min_special)
    ]

    # مخلوط کردن کاراکترها
    secrets.SystemRandom().shuffle(password)
    return "".join(password)

حالا میخواهیم در وردپرس این تابع را فراخوانی کنیم. برای اینکار، ابتدا کد بالا را در ویرایشگر آنلاین سایت بکندباز وارد کرده و کد را ذخیره کنید:

بعد از ذخیره یک آیکون (API) در سایدبار سمت راست مشخص می شود. روی آن کلیک کنید و روی دکمه فعال سازی API بزنید. در زمان تست حال دیباگ را نیز فعال نگه دارید اما در مرحله اجرا، تیک این بخش را بردارید تا خطاهای کد و … هنگام ارسال درخواست مشخص نشود.

در این مرحله باید وارد پنل کاربری خود شده و کلید API خود را دریافت کنید. دو کلید client key و client secret به شما داده می شود که باید فوراً در جایی ذخیره کنید. (درصورتی که client secret خود را فراموش کنید باید دوباره وارد این صفحه شده و دو کلید جدید دریافت کنید). این کلید ها را باید در بخش headers به شیوه Basic Auth به API ارسال کنید. در بخش headers، مقدار content-type را نیز برابر با  application/json قرار دهید، چرا که داده ها باید به صورت json ارسال شوند.

پارامتر های مورد نیاز تابع را با متد POST به آدرس  https://backendbaz.ir/auto-api/{code_id}/{method_name} ارسال کنید:

1- پارامتر code_id که برابر با شناسه کد شما است و می توانید آن را از آدرس کد خود در ویرایشگر آنلاین سایت برداشت کنید:
backendbaz.ir/online-editor/python/35399

برای نمونه در لینک کد بالا، شناسه کد 35399 است.

2- method_name: نام تابع اصلی که قرار است فراخوانی شود

3- پارامتر parameters باید با فرمت json به لینک بالا ارسال شود که شامل پارامتر های ورودی تابع است:

  • لیست ورودی های مورد نظر به صورت کلید/مقدار، با کلید inputs

با این توضیحات اگر بخواهیم یک پسورد 20 کاراکتری با حداقل 6 عدد و 6 کاراکتر خاص دریافت کنیم، دیتایی که باید برای این API ارسال کنیم json زیر است:

curl -X POST https://backendbaz.ir/auto-api/35399/generate_password \
-H "Content-Type: application/json" \
-d '{"length": 20,"min_digits": 6,"min_special": 6}'


		
	

 

مستندات

 

 

Method POST
Endpoint https://backendbaz.ir/auto-api/{auto-api}/{method_name}
Headers
Content-type application/json
Authorization Basic Auth
Body : “dictionary of inputs”

نمونه کد

این نمونه کد برای اجرای API مربوط به این کد است:

<?php

$client_key = 'Your Client Key';
$client_secret = 'Your Client Secret';
$Authorization = sprintf('Authorization: Basic %s', base64_encode(sprintf('%s:%s', $client_key, $client_secret)));

$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => 'https://backendbaz.ir/auto-api/{code_id}/{method_name}',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS =>'{"numbers": [1, 2, 3, 5]}',
CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json',
    $Authorization
),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;

                
import requests
import requests
import json
from base64 import b64encode

userAndPass = b64encode(b"client_key:$client_secret").decode("ascii")
Authorization = { 'Authorization' : 'Basic %s' %  userAndPass }
url = "https://backendbaz.ir/auto-api/{code_id}/{method_name}"

payload = json.dumps({
      "number": [
        1,
        2,
        3,
        5
      ]
    })
headers = {
  'Content-Type': 'application/json',
  Authorization 
}

response = requests.request("POST", url, headers=headers, data=payload)

print(response.text)