ياهو نيز به نوبه خود يك سايت ويژه براي برنامهنويساني دارد كه مايليند از وبسرويسهاي ياهو در نرمافزارهاي تحت وب يا روميزي (اما آنلاين) خود استفاده كنند. اگر به آدرس http://developer.yahoo.com سري بزنيد خودتان همه چيز را در خواهيد يافت.
در مقايسه با گوگل، ياهو به سلايق و گرايشهاي مختلف برنامهنويسان، بيشتر بها داده و دليل اين موضوع هم روشن است؛ از آنجا كه گوگل احساس ميكند قدرت بلامنازع عرصه وب است، اصراري ندارد به ساز برنامهنويساني با سلايقي متفاوت از سليقه گوگلكاران، برقصد؛ بنابراين وقتي به API وبسرويسهاي گوگل مراجعه ميكنيد، انعطاف اندكي در اين زمينه مشاهده ميكنيد.
در مقابل، ياهو خود را در موضع ضعف ميبيند و ترجيح ميدهد كه با تحميل نظر فني خود، موجب رانده شدن برنامهنويسان نشود. بنابراين درِ خانه برنامهنويسان ياهو به روي بسياري از مشتاقان، باز است. اگر جاوااسكريپت بلديد، اگر با PHP كار ميكنيد، اگر به انيميشنهاي فلش علاقمنديد يا اگر جزو داتنتكاران هستيد، در اين مكان،براي هر يك از شما صفحات و اطلاعات جداگانهاي تدارك ديده شده است. ياهو حتي به فكر برنامهنويساني كه از پلتفرم جديد رابي (Ruby On Rails) يا زبان Python استفاده ميكنند نيز بوده است.
منوي غذاهاي ياهو
خوشبختانه سيستم وبسرويسهاي ياهو براي برنامهنويساني با نيازهاي متفاوت، خوراكهاي لذيذي تدارك ديده است. وضعيت آب و هواي اقصينقاط جهان، وضعيت ترافيك راهها و جادهها در برخي كشورهاي دنيا، خروجيهايRSS پورتالهاي خبري ياهو، بانك اطلاعات كاريابي، آخرين وضعيت بازارهاي مالي جهان، سرويس برنامهريزي سفر (Yahoo Travel Planner) براي يافتن هتلها و خطوط هواپيمايي، موتور جستوجوي ياهو، سرويس Yahoo Answers، سرويس ايميل ياهو و سرويسهاي پرطرفداري مانند del.icio.us و ... در كنار ساير خدمات ياهو از قبيلMyBlogLog و Webjay، از جمله مهمترين سرويسهايي هستند كه برنامهنويسان ميتوانند از طريق API مخصوص ياهو به آن دسترسي داشته باشند. استفاده از برخي سرويسهاي جانبي مانند جستوجو در ميان سازندگان اتومبيلهاي سفارشي نيز خالي از لطف نيست.
از طريق موتور جستوجوي ياهو ميتوانيد بانك اطلاعاتي اخبار، فايلهاي صوتي، عكس، ويدئو و متن را جستوجو كنيد و نتايج را در داخل سايت يا نرمافزار خود نمايش دهيد. البته در اين حالت تعداد نتايجي كه ياهو نمايش ميدهد، محدود است؛ به دليل اينكه سايت ياهو بتواند مزيت رقابتي خود را در مقايسه با ساير سايتهايي كه ممكن است از اين وب سرويس استفاده كنند، حفظ كند.
لم بدهيد و XML سفارش بدهيد!
استفاده از وبسرويسهاي ياهو از دو طريق امكانپذير است؛ روش اصلي، استفاده از پروتكل (Representational State Transfer) REST است. به كمك API ياهو اين پروتكل را ميتوانيد هم در زبانهاي دات نتي (از قبيل VB.NET و سي شارپ) و هم در PHP و ساير زبانهايي كه پيشتر اشاره كرديم، به كاربريد.
پروتكل REST را ميتوانيد رقيبي براي پروتكل SOAP درنظر بگيريد كه مورد علاقه مايكروسافت است و بعضي ديگر از بزرگان صنعت، مانند آيبيام نيز آن را به كار بردهاند. كار با پروتكل REST بسيار ساده است. در اين شيوه آنچه كه شما قصد دسترسي به آن را داريد با فرمت آدرسهاي وب و به صورت منابع اطلاعاتي، تعريف ميشوند.
مثلاً اگر ميخواهيد فهرستي از كاربران عضو يك گروه داشته باشيد، آدرسي مانند http://example.com/users و اگر ميخواهيد به جزئيات مشخصات يك كاربر، دسترسي داشته باشيد (به فرض اينكه مجاز به چنين كاري باشيد) آدرس (http://example.com/users/UserId) را فراخواني ميكنيد و به همين ترتيب همه چيز بهصورت منابع اطلاعاتي، از طريق URL قابل دسترسي است.
با اين حال، ياهو روش ديگري نيز پيشبيني كرده كه برنامهنويسان مايكروسافتي ممكن است آن را بپسندند. اين پروتكل XAML (زمل) نام دارد و پيشتر در ماهنامه شبكه معرفي شده است. به هر صورت، نتيجه نهايي درخواستهايي كه براي وبسرويسهاي ياهو به صورت REST يا XAML ميفرستيد، با فرمت XML برميگردد.
براي استفاده رايگان از وب سرويسهاي ياهو، ضمن پذيرش يك سري قوانين و مقررات كه عمدتا مربوط به عدم سوء استفاده از اين خدمات و رعايت كپيرايت است، بايد يك شناسه كاربري به نام Yahoo Application ID دريافت كنيد.
مشابه اين مكانيزم، در مورد وب سرويسهاي گوگل و Live.com نيز وجود دارد. به كمك اين شناسه، هنگام فراخواني توابع و سرويسهاي موردنظرتان، ياهو، شما و نرمافزارتان را شناسايي ميكند.
براي كار با اين سرويسها در پلتفرمها و زبانهاي مختلف برنامهنويسي، SDKهاي جداگانهاي تدارك ديده شده كه ميتوانيد آنها را به رايگان دانلود كنيد. خوشبختانه ياهو براي آشنايي برنامهنويسان با نحوه استفاده از APIموجود، مثالهاي متنوعي را تدارك ديده است كه ميتوانيد آنها را نيز دانلود و مطالعه كنيد.