صفحه 1 از 2 12 آخرآخر
نمایش نتایج 1 تا 40 از 52

نام تاپیک: آموزش api بازار

  1. #1
    کاربر دائمی آواتار raha_jon
    تاریخ عضویت
    بهمن 1392
    محل زندگی
    بعضی ها چقد مردن!!وقتی میبینن یک برنامه فروش خوبی داره ف
    پست
    480

    آموزش api بازار

    سلام

    لطفا دوستان آموزشی مربوطه به API بازار قرار دهید منم قول میدم بعد اینکه یاد گرفتم فیلمشو تهیه کنم و بذارم اینجا دوستان استفاده کنن

    با تشکر در ضمن من این لینکو دیدم اما چیزی متوجه نشدم

    لطفا کامل توضیح بدین با تشکر


    <?php

    if(empty($_REQUEST['package']) || empty($_REQUEST['product']) || empty($_REQUEST['tokenid'])){
    echo "error";
    return;
    }

    $package = $_REQUEST['package'];
    $product = $_REQUEST['product'];
    $tokenid = $_REQUEST['tokenid'];

    $refcode = 'کدی که از بازار گرفتین - رفرش کد';

    $url = 'http://pardakht.cafebazaar.ir/auth/token/';
    $data = array('grant_type' => 'refresh_token', 'client_id' => 'آیدی کلاینت', 'client_secret' => 'رمز کلاینت', 'refresh_token' => $refcode);

    # Create a connection
    $ch = curl_init($url);

    # Form data string
    $postString = http_build_query($data, '', '&');

    # Setting our options
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

    # Get the response
    $response = curl_exec($ch);

    $jsonResponse = json_decode($response, true);

    $access_token = $jsonResponse['access_token'];

    $result = file_get_contents("https://pardakht.cafebazaar.ir/api/validate/$package/inapp/$product/purchases/$tokenid/?access_token=$access_token");

    echo $result;

    curl_close($ch);


    ?>





  2. #2
    کاربر دائمی آواتار c0mmander
    تاریخ عضویت
    اردیبهشت 1393
    محل زندگی
    خونمون D:
    پست
    563

    نقل قول: آموزش api بازار

    اول از همه این تاپیک رو مطالعه کنید https://barnamenevis.org/showthread.p...B1%D9%88%D8%B1

    دوم باید یک هاست (ترجیحا رایگان, اما رایگان بودن هاست هم یک سری, درد سر هایی داره ولی برای شروع بهتر هست از رایگان استفاده کنید) همراه با دامین و یا ساب دامین ایجاد کنید.

    سوم باید یک کلایت ایجاد کنید : توضیح http://pardakht.cafebazaar.ir/doc/developer-api/?l=fa
    اونجایی که گفته Redirect URI همون صفحه از php شماست که داخل هاست قرار دادید که قرار بازار با اون ارتباط داشته باشه مثلا : www.c0mmanderHost.ir/input_check.php

    بعد از اینکه بازار به شما کلایت ای دی و سیکرت کلایت و غیره رو ایجاد کرد فقط دوتا از آنها رو در لینک زیر جایگزین کن یعنی: <REDIRECT_URI> و <CLIENT_ID> .

    https://pardakht.cafebazaar.ir/auth/authorize/?response_type=code&access_type=offline&redirect_u ri=<REDIRECT_URI>&client_id=<CLIENT_ID>

    در نهایت لینک رو داخل مرورگر باز کن, تا دکمه تایید بیاد و تایید کن.
    چند لحظه صبر کن وارد صفحه همون سایتت میشه, دقت کن بالای ادررس بار سایت جلوی اسم سایت یک نوشته هست شبیه به این: code= asdfasdfsadfsadfsadfasdfasdfasdf یک همچین چیزی این رو داشته باش یک جایی.

    و بعدش این آدرس رو در در مرورگرتون باز کنید:
    https://pardakht.cafebazaar.ir/auth/token/
    حالا اطلاعاتی که با توجه به توضیحات بازار در مراحل قبل گرفتید رو داخلش بزارید یعنی اطلاعات صفحه بازار و اطلاعات کلایت ایجاد کردید و کدی که در مرحله قبل گرفتید رو جای گذاری کنید و دکمه Authorize رو بزنید

    اگر همه چیز رو درست انجام داده باشید باید جوابی شبیه به زیر رو بهتون بده: (دقت کنید که جواب بازار سر هم دیگه هست مثل این جدا جدا نیست در حقیقت یک Json خروجی هست)

    {
    "access_token": "GWObRK06KHLr8pCQzDXJ9hcDdSC3eV",
    "token_type": "Bearer",
    "expires_in": 3600,
    "refresh_token": "yBC4br1l6OCNWnahJvreOchIZ9B6ze",
    "scope": "androidpublisher"
    }


    حالا که هم اکسس کد رو گرفتید و هم ریفرش کد. میتونی حالا با جای گذاری اون اطلاعات در کد بالا, فایل PHP رو ذخیره کن و داخل همون آدرس در هاست بگذار مثلا www.c0mmanderHost.ir/input_check.php در اینجا input_check.php همون فایل PHP ذخیره شده در هاست شماست.
    توضیحات حجت عزیز هم برای اون کدی هست که بالا گذاشتید:
    به این فایل سه تا پارامتر باید بفرستید، یکی اسم پکیج، یکی آیدی محصول و دیگری توکنی که بعد از خرید به برنامه داده میشه همون purchase.getOrderId

    داخل فایل باید refresh code رو که از بازار به صورت دستی گرفتید بذارید
    آیدی کلاینت و رمزش رو هم وارد کنید

    در جواب به شما یک رشته JSON داده میشه، اگر خالی بود یعنی پرداخت درست نیست، اگر که شامل استاتوس و سایر مشخصات خرید بود یعنی درسته

    پاسخ درست به شکل زیره
    {"consumptionState": 1, "purchaseState": 0, "kind": "androidpublisher#inappPurchase", "developerPayload": "hojjat", "purchaseTime": 1424267267085}

    پاسخ غلط هم فقط {} فرستاده میشه

    در صورتی که access code اشتباه باشه هم ارور 404 میگیرید

    چندتا توضیح هم خودم اضافه میکنم !

    ببنید ساختار این کار به این صورته:

    1- شناساندن سایت معتبر به بازار جهت استعلام گرفتن بعدی:
    • با ثبت یک کلایت که دارای یک Client Id و Secret Client : در حقیقت اینها یوز و پسورد شما برای درست رسی به اکسس کد هستند
    • گرفتن کد تایید وجود وب سایت این کد نشان دهنده این هست که چنین وبسایتی وجود داره(یکی از زیبایی های این کار همینه)

    2- استعلام گرفتن خودکار اکسس کد توسط وب سایت بعد از هر بار تقاضا از جهت برنامه اندرویدی شما به وب سایت شما
    • در حقیقت این API تمام در یک قسمت کار خودش رو انجام میده به دوتا دستور : authorization_code برای گرفتن کد ها ضروری و refresh_token برای گفتن اکسس کد.
    • امنیتی که باز هم در اینجا رعایت شده این هست که اکسس کد یک کد اعتباری هست و بعد از چند لحظه دیگه کاربردی نداره پس باید وب سایت شما خودش بتونه اکسس کد رو بگیره حالا ریفرش کد refresh_token دقیقا همون کاری code در مرحله قبلی برای شما انجام میده با چند تفاوت یک تغییر نمیکنه و ثابته دوم مختص همان آدرسی از وب سایت هست که شما در بازار ثبت کردید.

    3- استعلام خرید و دریافت پاسخ نهایی

    • در از دریافت اکسس کد حالا میتونید با ارسال توکن دریافتی از خرید در اندروید و ارسال اون به وب سایت در این مرحله همراه با اکسس کد ارسال میشه جهت بررسی اگر جواب موجود بود وب سایت شما json کامل دریافت میکنه اگر هم توکن اشتباه بود مقادیر خالی رو یافت میکنید.

    file_get_contents در کد PHP بالا کار مت post , رو انجام میده که اونم خیلی زیباست :)
    آخرین ویرایش به وسیله c0mmander : پنج شنبه 21 اسفند 1393 در 19:02 عصر دلیل: ویرایش و اضافه کردن توضیحات خودم :)

  3. #3
    کاربر دائمی آواتار raha_jon
    تاریخ عضویت
    بهمن 1392
    محل زندگی
    بعضی ها چقد مردن!!وقتی میبینن یک برنامه فروش خوبی داره ف
    پست
    480

    نقل قول: آموزش api بازار

    ممنون میشم کامل توضیح بدین ،باشه عب نداره شب می ذارین

  4. #4
    کاربر دائمی آواتار raha_jon
    تاریخ عضویت
    بهمن 1392
    محل زندگی
    بعضی ها چقد مردن!!وقتی میبینن یک برنامه فروش خوبی داره ف
    پست
    480

    نقل قول: آموزش api بازار

    در مقدار <REDIRECT_URI> که یک ادرس هست چی داخلش باشه؟یعنی مثلا اگه
    http://123.com/text.php
    بود چی داخل فایل پی اچ پی باشه؟

  5. #5
    کاربر دائمی آواتار c0mmander
    تاریخ عضویت
    اردیبهشت 1393
    محل زندگی
    خونمون D:
    پست
    563

    نقل قول: آموزش api بازار

    نقل قول نوشته شده توسط raha_jon مشاهده تاپیک
    در مقدار <REDIRECT_URI> که یک ادرس هست چی داخلش باشه؟یعنی مثلا اگه
    http://123.com/text.php
    بود چی داخل فایل پی اچ پی باشه؟
    پست بالا رو ویرایش کردم.

    همون سایتی که شما قرار کدتون رو چک کنید هست .. همون هاست و دامینی که برای این کار شما تهیه کردیده. یعنی شما اول یک سایت ایجاد میکنید با نام http://123.com در نهایت فایل text.php رو داخل اون سایت قرار میدید که آدرس سایت شما برای REDIRECT_URI میشه http://123.com/text.php

  6. #6

    نقل قول: آموزش api بازار

    من خیلی معذرت میخوام !

    منظور از api بازار چی هس؟!
    آیا راهی برای چک کردن خرید بصورت آنلاین هستش؟


    ممنون میشم فیلمی هم که گفتین رو تهیه کنین

  7. #7
    کاربر دائمی آواتار c0mmander
    تاریخ عضویت
    اردیبهشت 1393
    محل زندگی
    خونمون D:
    پست
    563

    نقل قول: آموزش api بازار

    نقل قول نوشته شده توسط hamedg1366 مشاهده تاپیک
    من خیلی معذرت میخوام !

    منظور از api بازار چی هس؟!
    آیا راهی برای چک کردن خرید بصورت آنلاین هستش؟


    ممنون میشم فیلمی هم که گفتین رو تهیه کنین
    فیلم رو که من حالی ندارم که بخوام تهیه کنم و به هیچ کسی توصیه نمیکنم که این فیلم رو تهیه کنه چون اطلاعات برنامه خودش خیلی مهم تره تا یک فیلم .. تمام توضیحات رو من و سایر دوستان دادیم.

    api بازار در حیقیت یک امکانی هست برای اینکه یک صورت تاییدیه خریدی با استفاده از REST از وبسایت بگیریم . این کار فقط برای برنامه هایی که پرداخت درون برنامه دارند امکان پذیره. بعد از اینکه شما پرداخت درون برنامه رو ساختید باز باید بیاد اینجا تا از شر ملعونک معروف و دوستانش رها بشید (البته شوخی بود و اما ه ک ر ها رو نمیشه کاریشون کرد. ه ک ر ها : معلون بزرگند , لاکی پچر و سایر برنامه های این چنینی : ملعونک )
    آخرین ویرایش به وسیله c0mmander : پنج شنبه 21 اسفند 1393 در 18:59 عصر

  8. #8
    کاربر دائمی آواتار raha_jon
    تاریخ عضویت
    بهمن 1392
    محل زندگی
    بعضی ها چقد مردن!!وقتی میبینن یک برنامه فروش خوبی داره ف
    پست
    480

    نقل قول: آموزش api بازار

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


    <?php

    if(empty($_REQUEST['package']) || empty($_REQUEST['product']) || empty($_REQUEST['tokenid'])){
    echo "error";
    return;
    }

    $package = $_REQUEST['package'];
    $product = $_REQUEST['product'];
    $tokenid = $_REQUEST['tokenid'];

    $refcode = 'کدی که از بازار گرفتین - رفرش کد';

    $url = 'http://pardakht.cafebazaar.ir/auth/token/';
    $data = array('grant_type' => 'refresh_token', 'client_id' => 'آیدی کلاینت', 'client_secret' => 'رمز کلاینت', 'refresh_token' => $refcode);

    # Create a connection
    $ch = curl_init($url);

    # Form data string
    $postString = http_build_query($data, '', '&');

    # Setting our options
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

    # Get the response
    $response = curl_exec($ch);

    $jsonResponse = json_decode($response, true);

    $access_token = 'wlofRGW2OGLaxenZFf30SNADTsduP1';

    $result = file_get_contents("https://pardakht.cafebazaar.ir/api/validate/$package/inapp/$product/purchases/$tokenid/?access_token=$access_token");

    echo $result;

    curl_close($ch);


    ?>



    اینم نتتیجه

    {"consumptionState": 0, "purchaseState": 0, "kind": "androidpublisher#inappPurchase", "developerPayload": "payload-string", "purchaseTime": 1426095144074}


    اما مشکل اینه بعدا میگه توکن معتبر نیست

    با نتایج می تونم یب جوری کار کنم مشکل اینه که بعد از مدتی میگه توکن معتبر نیست

    بازم ممنون از راهنمایی هاتون

  9. #9
    کاربر دائمی آواتار c0mmander
    تاریخ عضویت
    اردیبهشت 1393
    محل زندگی
    خونمون D:
    پست
    563

    نقل قول: آموزش api بازار

    نقل قول نوشته شده توسط raha_jon مشاهده تاپیک
    سلام ممنون واقعا،
    من این کارو کردم و با ادرس مرورگر اطلاعاتشو دادم فقط این کد ها را ریختم تو فایل پی اچ پی و چون جسون بلد نبودم مستقیم دادم با رنگ قرمز پر رنگ کردم.اما اصلا نفهمیدم بقیه چین و کارشون چیه در ضمن توکن هم عوض کردم ها

    اما مشکل اینه بعدا میگه توکن معتبر نیست

    با نتایج می تونم یب جوری کار کنم مشکل اینه که بعد از مدتی میگه توکن معتبر نیست

    بازم ممنون از راهنمایی هاتون
    سلام .
    من توضیحاتی رو به پست اول اضافه کردم که دلیل این ارور شما هم مشخصه.
    دلیلش اینکه که اکسس توکن کد یک کد اعتباری و مدت دار هست یعنی بعد از یک مدتی از بین میره. و باید دوباره اون رو گرفت برای همین فقط باید از کد زیر استفاده کرد:
    $access_token = $jsonResponse['access_token'];


    تا مستقیما اکسس کدی که از بازار تولید کرده رو برای ادامه فرایند داخل $access_token بریزه !

    ویرایش...
    آخرین ویرایش به وسیله c0mmander : پنج شنبه 21 اسفند 1393 در 22:02 عصر

  10. #10

    نقل قول: آموزش api بازار

    سلام

    بنده همه مراحل متوجه شدم،
    جز این! داخل هاست چی بریزم؟ . چی فایلی نیاز داره تا روی هاست اپلود کنم؟؟!!
    یعنی داخل هاست، یه فایل php خالی ایجاد کنم؟؟ در اینصورت خطا میده، میگه
    خطا

    درخواست اشتباه است.!!





    خواهش می کنم که راهنمایی کنید،
    باتشکر

  11. #11

    نقل قول: آموزش api بازار

    سلام من همه مراحل رو میرم ، ولی الان فایل php آمادست و سایر مراحل هم رفتم ، حالا چجور در بخش PaymentActivity برناممون بهش بگیم به اون صفحه مراجعه کنه ؟

  12. #12
    کاربر دائمی آواتار raha_jon
    تاریخ عضویت
    بهمن 1392
    محل زندگی
    بعضی ها چقد مردن!!وقتی میبینن یک برنامه فروش خوبی داره ف
    پست
    480

    نقل قول: آموزش api بازار

    نقل قول نوشته شده توسط mavera مشاهده تاپیک
    سلام

    بنده همه مراحل متوجه شدم،
    جز این! داخل هاست چی بریزم؟ . چی فایلی نیاز داره تا روی هاست اپلود کنم؟؟!!
    یعنی داخل هاست، یه فایل php خالی ایجاد کنم؟؟ در اینصورت خطا میده، میگه
    خطا

    درخواست اشتباه است.!!





    خواهش می کنم که راهنمایی کنید،
    باتشکر
    سلام
    در پی اچ پی همون اطلاعاتو که من در بالا گذاشته ام استفاده کنید به همین راحتی

  13. #13

    نقل قول: آموزش api بازار

    سلام


    ببخشید که متوجه نشدم،
    منظور اون بالا ، کد در اول پست ، داخل فایل php بریزم بعدش توی هاست آپلود کنم؟؟؟؟


    متاسفانه خطا میده که
    خواهش می کنم شفاف بگید
    خیلی ممنون

  14. #14
    کاربر دائمی آواتار raha_jon
    تاریخ عضویت
    بهمن 1392
    محل زندگی
    بعضی ها چقد مردن!!وقتی میبینن یک برنامه فروش خوبی داره ف
    پست
    480

    نقل قول: آموزش api بازار

    بینید
    اره تو افیطل پی اچ پی محتویات بالا را قرار بدین
    بعدش اطلاعاتی که9 بازار میده بهتون را باهاش کامل کنید
    فارسی هم نوشته شده اینجا چی وارد کنید
    مثلا رفرش کد را بازار میده بذار اونجا
    بعدش مثلا نوشته آیدی کلاینت فارسی را پاک کن و بجاش ایدی کلاینت را بده

    بعدا مثلا ادرست اینه
    http://testha.com/m/ch.php
    خوب بعد اینجوری ادرس بده
    http://testha.com/m/ch.php?package=t...hgbvjhbvjhbhjb


    به جایtest.my.pack پکیج برنامه
    به جای milio شناسه که تو بازار ساختی
    به جای hgbvjhbvjhbhjb توکن محصول

  15. #15

    نقل قول: آموزش api بازار

    سلام

    ولله خطا میده

    ابنم فایل php ، ضمیمه کردم، و ببنید

    با تشکر
    فایل های ضمیمه فایل های ضمیمه

  16. #16
    کاربر دائمی آواتار c0mmander
    تاریخ عضویت
    اردیبهشت 1393
    محل زندگی
    خونمون D:
    پست
    563

    نقل قول: آموزش api بازار

    نقل قول نوشته شده توسط mavera مشاهده تاپیک
    سلام ولله خطا میده ابنم فایل php ، ضمیمه کردم، و ببنید با تشکر
    عزیز با UTF-8 سیو کن فایل رو. بعد داخل هاست فایل منیجرت رو باز کن و گزینه آپلود فایل رو بزن یا اگر از نرم افزار فایلزیلا استفاده میکنی که بهتر.

  17. #17

    نقل قول: آموزش api بازار

    UFT-8 سیو کردم، بعدش ریختم روی هاست

    متاسفانه میگه

    خطا

    درخواست اشتباه است.

    میشه خودتون یه فایل php درست کنی، برام بفرستی،
    ممنون

  18. #18

    نقل قول: آموزش api بازار

    سلام بچه ها من یه مشکل دارم خط 35 error میده $result = file_get_contents("https://pardakht.cafebazaar.ir/api/validate/$package/inapp/$product/purchases/$tokenid/?access_token=$access_token");بعد حالا کد نویسی سمت اندرویدش باید چیکار بشه ؟بعد برای هر برنامه باید این کارا رو انجام داد ؟و این grant_type باید مقدارش چی باشه ؟و این product_id چیه ؟با تشکر از همراهی شما .

  19. #19

    نقل قول: آموزش api بازار

    سلام دوستان از اونجایی که خیلی از کاربران با این موضوع مشکل دارن گفتم آموزش استفاده از API بازار رو در اختیارتون قرار بدم.

    مراحل به ترتیب:

    ۱- اول باید یک سایت داشته باشید تا پاسخ بازار به درخواست شما به اونجا ارسال بشه.

    ۲- یک فایل php ایجاد کنید و داخلش کد های زیر رو قرار بدید(فعلا هیچی ویرایش نکنید و فقط کدها رو توش قرار بدید):

    <?php

    if(empty($_REQUEST['package']) || empty($_REQUEST['product']) || empty($_REQUEST['tokenid'])){
    echo "error";
    return;
    }

    $package = $_REQUEST['package'];
    $product = $_REQUEST['product'];
    $tokenid = $_REQUEST['tokenid'];

    $refcode = 'کدی که از بازار گرفتین - رفرش کد';

    $url = 'http://pardakht.cafebazaar.ir/auth/token/';
    $data = array('grant_type' => 'refresh_token', 'client_id' => 'آیدی کلاینت', 'client_secret' => 'رمز کلاینت', 'refresh_token' => $refcode);

    # Create a connection
    $ch = curl_init($url);

    # Form data string
    $postString = http_build_query($data, '', '&');

    # Setting our options
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

    # Get the response
    $response = curl_exec($ch);

    $jsonResponse = json_decode($response, true);

    $access_token = $jsonResponse['access_token'];

    $result = file_get_contents("https://pardakht.cafebazaar.ir/api/validate/$package/inapp/$product/purchases/$tokenid/?access_token=$access_token");

    echo $result;

    curl_close($ch);


    ?>



    ۵- حالا اونو با انکود UTF-8 سیو کنید.
    ۶- فایل رو آپلود کنید (سایت خودتون).
    ۷- حالا فایل رو با ویرایشگر هاستتون باز کنید.
    ۸- حالا به بازار برید و یک کلاینت ایجاد کنید در قسمت "Redirect URI" هم آدرس فایل php که در سایتتون آپلود کردن رو قرار بدید بعد از ایجاد کلاینت بازار:
    "CLIENT ID"
    "CLIENT SECRET"
    "REDIRECT URIS"

    رو بهتون میده.

    ۱۰ - آدرس زیر رو در مروگرتون باز کنید به جای <REDIRECT_URI> هم REDIRECT URIS مرحله قبل و به جای <CLIENT_ID> هم CLIENT ID مرحله قبلی رو قرار بدید.
    https://pardakht.cafebazaar.ir/auth/authorize/?response_type=code&access_type=offline&redirect_u  ri=<REDIRECT_URI>&client_id=<CLIENT_ID>


    ۱۱- یک صفحه باز میشه که توش نوشته مجوز دسترسی. روی تایید کیک کنید بعد به آدرست فایل php که قبلا آپلود کردیم فراخوانی می شیم که یه error توشته شده... کاری بهش نداریم... توی آدرس بار مروگرتون اگه توجه کنید به غیر آدرس فایل php یه کد هم همراهش هست مثل این:

    کد HTML:
    http://website.domin/test_api.php?code=RPL1TgBTlBs6kJad3hyDYebtkd521inRCQR
    در آدرس بالا اینو داریم:
    code=RPL1TgBTlBs6kJad3hyDYebtkd521inRCQR

    ما هم به:
    RPL1TgBTlBs6kJad3hyDYebtkd521inRCQR

    برای مرحله بعد نیاز داریم البته کدی که شما دریافت می کنید با کد بالا فرق داره.

    ۱۲- حالا به این آدرس برید:

    کد HTML:
    https://pardakht.cafebazaar.ir/auth/token/
    در قسمت grant_type عبارت ریز رو بنویسید:
    authorization_code

    در قسمت code کدی که مرحله قبلی دریافت کردید رو قرار بدید.
    در قسمت client_id هم CLIENT ID مرحله ۸ رو قرار بدید.
    درقسمت client_secret هم CLIENT SECRET مرحله ۸ رو قرار بدید.
    در قسمت redirect_uri هم REDIRECT URIS مرحله ۸ رو قرار بدید.

    بعد روی Authorize کلیک کنید.

    ۱۳- حالا پاسخ به صورت زیر خواهد بود:

    {
    "access_token": "GWObRK06KHLr8pCQzDXJ9hcDdSC3eV",
    "token_type": "Bearer",
    "expires_in": 3600,
    "refresh_token": "yBC4br1l6OCNWnahJvreOchIZ9B6ze",
    "scope": "androidpublisher"
    }


    ۱۴- حالا برمیگردیم به فایل php! حالا همه چی واضح شد! و بر اساس پاسخ مرحله قبلی فایل php رو کامل و سیو کنید.
    ۱۵- تموم شد! کافیه توی مروگرتون آدرس زیر رو باز کنید به جای <package_name> نام پکیج برنامتون و به جای <product_id> نام محصول و به جای <access_token> یک توکن که در لیست فروش هست قرار بدید به جای:
    http://website.domin/test_api.php

    آدرس فایل php رو قرار بدید.

    کد HTML:
    http://website.domin/test_api.php?package=<package_name>&product=<product_id>&tokenid=<access_token>
    پاسخ درست به صورت زیر:

    {
    "consumptionState": 1,
    "purchaseState": 0,
    "kind": "androidpublisher#inappPurchase",
    "developerPayload": "something",
    "purchaseTime": 1414181378566
    }


    و پاسخ اشتباه به صورت زیر(اگر برنامه خریداری نشده):

    "{}"




    امیدوارم کامل و ساده توضیح داده باشم ولی خودم یه مشکل دارم! اونم اینه که برنامه چطور بفهمه که خرید درست بوده چون نمیدونه کاربر هنگام خرید چه توکنی براش ساخته شده؟!

    مرحله ۱۵ ویرایش شد دوستان از اشتباهم عذر میخوام...
    آخرین ویرایش به وسیله ali-star : دوشنبه 25 اسفند 1393 در 13:03 عصر

  20. #20

    نقل قول: آموزش api بازار

    سلام برنامه نویسا

    با تشکر از
    ali-star
    من مشکلم حل شد .... ظاهرا کدی که در پست اول هست مشکل داره
    حالا میمونه پیاده سازیش داخل اندروید که :)
    کسی بلده ؟

    باید بعد پرداخت توکن رو بگیریم و ارسال کنیم به آدرس مورد نظر با HTTP و اطلاعات رو بریزیم داخل یه StringBuilder و ...
    و بعد چک کنیم ... فقط مسئله اصلی همون به دست آوردن توکن هست ... کسی بلده ؟

  21. #21
    کاربر دائمی آواتار raha_jon
    تاریخ عضویت
    بهمن 1392
    محل زندگی
    بعضی ها چقد مردن!!وقتی میبینن یک برنامه فروش خوبی داره ف
    پست
    480

    نقل قول: آموزش api بازار

    سلام اینکه دوستمون میگه از کجا بفهمیم خرید شده باید بگیم هنگام ارسال اطلاعات از کلاس Purchase با متد getOrderId توکن را به دست میاریم و ارسال می کنیم بازم مشکل داشتین در بپرسید

  22. #22

    نقل قول: آموزش api بازار

    سلام

    خیلی ممنون از توضیحاتون، مرحله دوم به بعد شفاف گفتید، دمت گرم

    بنده مرحله دقت انجام دادم، باز متاسفانه میگه در خواست اشتباه است!!!!! :(

    اطلاعاتمون پیام خصوصی می کنم

    باتشکر

  23. #23

    نقل قول: آموزش api بازار

    آپ

    ویرایش مرحله ۱۵ از اشتباهم عذر میخوام دوستان.

  24. #24

    نقل قول: آموزش api بازار

    سلام

    جاهای که به فارسی نوشته شده، اصلاح و جایگزن کردم ولی بقیه اش چی کار کنیم،
    مثلا این کد


    $package = $_REQUEST['package'];$product = $_REQUEST['product'];$tokenid = $_REQUEST['tokenid'];



    این هم باید اصلاح کنیم؟، اولش نام پک برنامه و دومیش نام محصول و آخریش که... یا اینکه هیچکدام دست نزنیم؟

    یا


    $access_token = $jsonResponse['access_token'];


    با تشکر

  25. #25

    نقل قول: آموزش api بازار

    نقل قول نوشته شده توسط mavera مشاهده تاپیک
    سلام

    جاهای که به فارسی نوشته شده، اصلاح و جایگزن کردم ولی بقیه اش چی کار کنیم،
    مثلا این کد


    $package = $_REQUEST['package'];$product = $_REQUEST['product'];$tokenid = $_REQUEST['tokenid'];



    این هم باید اصلاح کنیم؟، اولش نام پک برنامه و دومیش نام محصول و آخریش که... یا اینکه هیچکدام دست نزنیم؟

    یا


    $access_token = $jsonResponse['access_token'];


    با تشکر
    فقط جاهای که فارسی توضیح داده شده رو ویرایش کنید.

  26. #26
    کاربر دائمی آواتار raha_jon
    تاریخ عضویت
    بهمن 1392
    محل زندگی
    بعضی ها چقد مردن!!وقتی میبینن یک برنامه فروش خوبی داره ف
    پست
    480

    نقل قول: آموزش api بازار

    متوجه نشدیم

  27. #27

    نقل قول: آموزش api بازار

    دوستان کسی میتونه نحوه استفاده ازش توی برنامه رو توضیح بده من سمت سرور انجام دادم ولی نمیدونم چجوری داخل برنامه متصل بشم و بررسی بکنم اگر بگید ممنون میشم

  28. #28
    کاربر دائمی آواتار c0mmander
    تاریخ عضویت
    اردیبهشت 1393
    محل زندگی
    خونمون D:
    پست
    563

    نقل قول: آموزش api بازار

    نقل قول نوشته شده توسط shs1377 مشاهده تاپیک
    دوستان کسی میتونه نحوه استفاده ازش توی برنامه رو توضیح بده من سمت سرور انجام دادم ولی نمیدونم چجوری داخل برنامه متصل بشم و بررسی بکنم اگر بگید ممنون میشم
    بعد از اون قسمتی از کدتون که تاییده بازار برای پرداخت رو دریافت کردید. یک نخ ایجاد کنید یک دونه پروگرس دیالوگ هم اجرا کنید . توکن بازگشتی رو همراه با اسم پکیج برنامه و اسم محصول برنامه تون رو به ترتیب به وبسایتون بفرستید.(من ترجیه میدم post بشه تا request) جواب برگشتی رو بخونید. جواب برگشتی رو داخل یک شی json پارس کنید تا به راحت تر بشه مقادیر رو مقایسه کرد.

  29. #29

    نقل قول: آموزش api بازار

    نقل قول نوشته شده توسط c0mmander مشاهده تاپیک
    بعد از اون قسمتی از کدتون که تاییده بازار برای پرداخت رو دریافت کردید. یک نخ ایجاد کنید یک دونه پروگرس دیالوگ هم اجرا کنید . توکن بازگشتی رو همراه با اسم پکیج برنامه و اسم محصول برنامه تون رو به ترتیب به وبسایتون بفرستید.(من ترجیه میدم post بشه تا request) جواب برگشتی رو بخونید. جواب برگشتی رو داخل یک شی json پارس کنید تا به راحت تر بشه مقادیر رو مقایسه کرد.
    سلام تا حدودی متوجه شدم ولی چون تاحالا با مبحث ارتباط با سرور کار نکردم نمیدونم چجوری باید این کد رو بنویسم کدش رو ندارید؟

  30. #30
    کاربر دائمی آواتار raha_jon
    تاریخ عضویت
    بهمن 1392
    محل زندگی
    بعضی ها چقد مردن!!وقتی میبینن یک برنامه فروش خوبی داره ف
    پست
    480

    نقل قول: آموزش api بازار

    سلام کدی نمیخواد فقط یک یو ار ال ر ا صدا بزن

  31. #31

    نقل قول: آموزش api بازار

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

  32. #32

    نقل قول: آموزش api بازار

    سلام
    خیلی ممنون دوستان

    حالا همه چی حله

    فقط یک چیز مونده، اونم آغاز خرید و ارتقا برنامه روی دکمه
    باید چی کد جایگزن و اضافه کنیم؟؟

    کاربر محترم raha_jon ، گفتید که فقط یک url صدا بزن، میشه بگید چجوری؟ چی کدی؟؟

    ممنون

  33. #33

    نقل قول: آموزش api بازار

    سلام
    کسی نیست بهم کمک کنه
    خدا ثواب بده

  34. #34

    نقل قول: آموزش api بازار

    نقل قول نوشته شده توسط mavera مشاهده تاپیک
    سلام
    کسی نیست بهم کمک کنه
    خدا ثواب بده
    دوست عزیز

    شما باید اول این خط رو به قسمت (boolean verifyDeveloperPayload(Purchase p اضافه کنید :

    order = p.getOrderId();


    بعد در قسمت ((if (purchase.getSku().equals(SKU_PREMIUM که بهش میگیم بعد از خرید چه اتفاقی بیفته شما کد های داخلش رو کپی کنید بعد از اون جا پاک بکنید

    حالا این کد رو به همین قسمت اضافه کنید :

    verifytoken();



    این کد ها و کلاس رو به آخر کدهاتون اضافه کنید :

        public void verifytoken() {        
    progressDialog = ProgressDialog.show(this, "بررسی خرید", "لطفا صبر کنید");
    new RequestTask().execute("**** در این قسمت کد ارتباط با api بازار رو وارد کنید****" + order);





    }

    class RequestTask extends AsyncTask<String, String, String>{


    @Override
    protected String doInBackground(String... uri) {
    HttpClient httpclient = new DefaultHttpClient();
    HttpResponse response;
    String responseString = null;
    try {
    response = httpclient.execute(new HttpGet(uri[0]));
    StatusLine statusLine = response.getStatusLine();
    if(statusLine.getStatusCode() == HttpStatus.SC_OK){
    ByteArrayOutputStream out = new ByteArrayOutputStream();
    response.getEntity().writeTo(out);
    responseString = out.toString();
    out.close();
    } else{
    //Closes the connection.
    response.getEntity().getContent().close();
    throw new IOException(statusLine.getReasonPhrase());
    }
    } catch (ClientProtocolException e) {
    //TODO Handle problems..
    } catch (IOException e) {
    //TODO Handle problems..
    }
    return responseString;
    }


    @Override
    protected void onPostExecute(String result) {
    super.onPostExecute(result);

    progressDialog.dismiss();

    if (result.length() > 5){


    Log.d(TAG, "Purchase is premium upgrade. Congratulating user." + result + result.length());
    Toast.makeText(getApplicationContext(), R.string.upgrade, Toast.LENGTH_SHORT).show();
    mIsPremium = true;
    updateUi();
    setWaitScreen(false);
    } else {
    Log.d(TAG, "natigeh" + result);
    setWaitScreen(false);
    Toast.makeText(getApplicationContext(), "پرداخت انجام نشد", Toast.LENGTH_SHORT).show();

    }
    }
    }


    توجه : در قسمتی که کد ارتباط با api بازار خودتون رو باید وارد بکنید به این صورت باید باشه مثلا اگر کد شما این باشد
    http://google.com/check.php?package=ir.app&product=sku&tokenid=123456789

    باشد باید اون رو اینجوری استفاده کنید

    "http://google.com/check.php?package=ir.app&product=sku&tokenid=" + order


    موفق باشید
    آخرین ویرایش به وسیله shs1377 : پنج شنبه 27 فروردین 1394 در 22:53 عصر

  35. #35
    کاربر دائمی آواتار c0mmander
    تاریخ عضویت
    اردیبهشت 1393
    محل زندگی
    خونمون D:
    پست
    563

    نقل قول: آموزش api بازار

    دوستان متاسفانه در کد های سمت سرور یک بی توجهی کوچکی شده که خیلیا نتونستن پیاده سازی کنن و بعضی از دوستان هم به من ایمیل دادن و با کلی اعصاب خوردی دق دلشون رو سر من بی نوا خالی کردن

    مشکل اصلی این است پروتکل بازار HTTP نیست بلکه HTTPS هست یعنی باید در قسمت دریافت ریفرش توکن این کد باشه به جای:

    $url = 'http://pardakht.cafebazaar.ir/auth/token/';


    باید این کد باشه:

    $url = 'https://pardakht.cafebazaar.ir/auth/token/';


    اما خوب حالا ممکنه هر جایی اشتباه باشه و هر کسی اشتباه کنه من خودم رو میگم واقعا درصد اشتباهاتم بالاست و همیشه هم سعی میکنم تجربه اشتباهات قبلی رو استفاده کنم اما خوبه که ادم حوصله به خرج بده یکم صبر کنه سوال کنه ...
    آخرین ویرایش به وسیله c0mmander : شنبه 29 فروردین 1394 در 04:13 صبح

  36. #36

    نقل قول: آموزش api بازار

    سلام
    عزیز shs1377

    بی نهایت سپاس گزارم،

    ان شالله عاقبت به خیر و سرافراز بشی

  37. #37

    نقل قول: آموزش api بازار

    سلام
    با تشکر از shs1377
    برنامه ام با کمک shs1377 قبلا با موفقیت از پرداخت جعلی جلوگیری کرده

    یه مشکل دیگه، اینه که تا زمانی که لاک-ی پچ.ر ملعون توی گوشی نصب باشه، بعد برنامه ای که می خواد پرداخت کنه، قبل از اینکه صفحه پرداخت کافه بازار بیاد، لاکی پچ.ر فضول تمام عیار میاد!
    ولی نمی تونه پرداخت واقعی انجام بدهد و هم چنین از پرداخت جعلی هم جلوگیری می کنه

    مثل اینه نه می تونه بخره و نه هم می تونه پچ کنه!!

    بعضی ها دوست دارن لا.کی پچ.ر توی گوشی داشته باشه، چی کارمیشه کرد؟

    با سپاس

  38. #38

    نقل قول: آموزش api بازار

    سلام
    ممنون از آموزشتون اما سمت اندروید رو میشه کد های کاملش رو بزارید و یکم واضح تر توضیح بدید چجوری باید پیاده سازی کرد؟

  39. #39

    نقل قول: آموزش api بازار

    سلام
    من هر کاری می کنم {} یا همون null برمیگردونه

    ممکنه بگویید بجای
    tokenid
    و
    product
    تو لینک زیر چی باید وارد کنیم؟؟؟

    http://website.domin/test_api.php?package=<package_name>&product=<product_id>&tokenid=<access_token>

  40. #40
    کاربر دائمی آواتار c0mmander
    تاریخ عضویت
    اردیبهشت 1393
    محل زندگی
    خونمون D:
    پست
    563

    نقل قول: آموزش api بازار

    نقل قول نوشته شده توسط Ebrahimkh مشاهده تاپیک
    سلام
    من هر کاری می کنم {} یا همون null برمیگردونه

    ممکنه بگویید بجای
    tokenid
    و
    product
    تو لینک زیر چی باید وارد کنیم؟؟؟

    http://website.domin/test_api.php?package=<package_name>&product=<product_id>&tokenid=<access_token>
    فکر کنم منظورتون به جای <product_id> و <access_token> هست که برای تست میخواهید نتیجه صحیح رو ببنید. باید جای <access_token> باید یک توکن معتبری که خرید انجام شده و در بازار ثبت شده هست رو بدید(در قسمت تراکنش های پنل بازار قرار دارد.). و <product_id> نام محصولتون هست

صفحه 1 از 2 12 آخرآخر

تاپیک های مشابه

  1. سوال: درخواست منبع برای آموزش API
    نوشته شده توسط nunegandom در بخش C#‎‎
    پاسخ: 6
    آخرین پست: شنبه 18 شهریور 1391, 02:59 صبح
  2. PDf آموزش API در وی بی
    نوشته شده توسط noorsoft در بخش برنامه نویسی در 6 VB
    پاسخ: 8
    آخرین پست: سه شنبه 14 اسفند 1386, 11:16 صبح
  3. آموزش: توابع API مدیریت پنجره ( قسمت اول)
    نوشته شده توسط Hamedm در بخش برنامه نویسی در 6 VB
    پاسخ: 16
    آخرین پست: پنج شنبه 23 آذر 1385, 14:45 عصر
  4. آموزش توابع API مدیریت پرینتر
    نوشته شده توسط Hamedm در بخش برنامه نویسی در 6 VB
    پاسخ: 4
    آخرین پست: یک شنبه 21 فروردین 1384, 08:49 صبح
  5. آموزش توابع API مدیریت پنجره (قسمت دوم)
    نوشته شده توسط Hamedm در بخش برنامه نویسی در 6 VB
    پاسخ: 7
    آخرین پست: شنبه 20 فروردین 1384, 08:17 صبح

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •