ورود

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : ارسال oAuth به وب سرویس YQL یاهو



esi20
September 22nd, 2017, 13:39
سلام

من قصد دارم از سرویس YQL یاهو استفاده کنم.

این سرویس دو حالت داره یه حالت پابلیک که همه میتونند ازش استفاده کنند و یه حالت هم هست که حتما باید عضو یاهو بشی و کلیدهای API رو دریافت کنی.

بعد انگار کلیدهای API رو که گرفتی باید باید یه چیزی به اسم oAuth ارسالش کنی به اینجا (https://query.yahooapis.com/v1/yql) تا بتونی استفاده کنی از API.

سوالی اینه که من چطوری این oAuth رو باید با PHP ارسالش کنم؟

تشکر

T.Toosi
September 22nd, 2017, 14:12
https://developer.yahoo.com/boss/search/boss_api_guide/codeexamples.html#oauth_php

قسمت PHP Example را برای OAuth مشاهده کنید.

esi20
September 22nd, 2017, 15:50
تشکر بابت پاسختون.

فقط من چون اصلا نمیدونم oAuth چیه گیج شدم.

چون توی این مثال از یکی دیگه از API های یاهو استفاده شده من نفهمیدم دقیقا چطوری شد.

این طور که فهمیدم یه بار درخواست میره برای oAuth یه بار هم درخواست میدی واسه کاری که میخوای.

درسته؟

میشه یه مثال با api خود yql یعنی این (https://query.yahooapis.com/v1/yql) برام بزنید؟

تشکر

esi20
September 23rd, 2017, 03:47
جناب T.Toosi یه مثال با API خود YQL بزنید تا من یه چیزی دستگیرم بشه.

خیلی تلاش کردم ولی نشد اون مثال رو با API خود YQL مطابقت بدم جوری که کار کنه.

تشکر

T.Toosi
September 23rd, 2017, 10:23
جناب T.Toosi یه مثال با API خود YQL بزنید تا من یه چیزی دستگیرم بشه.

خیلی تلاش کردم ولی نشد اون مثال رو با API خود YQL مطابقت بدم جوری که کار کنه.

تشکر

سلام، OAuth یک پروتکل احراز هویت هست، از کلاس زیر برای یاهو استفاده کنید :


https://github.com/rpLogicode/Yahoo_Oauth2/blob/master/src/YahooOAuth2.php

1- ابتدا با متد getAuthorizationURL یک URL می گیرید که وقتی وارد آن شوید 302 redirect می شود به Callback URL که به متد دادید و همچنین یک Request GET به نام code به آدرس callback هم ارسال می شود که باید آن را ذخیره کنید برای مرحله بعد.

2- از متد get_access_token استفاده می کنید تا تا با استفاده از code که در مرحله قبل دریافت کردیم از یاهو authorization دریافت کنیم و مقدار آن را ذخیره میکنیم.

3- با استفاده از متد httpRequest درخواست هامون را به https://query.yahooapis.com/v1/yql می فرستیم، یک از پارامتر های متد httpRequest همان authorization ای است که در مرحله 2 دریافت کردیم.