| جستجو با استفاده از وب سرویس گوگل - قسمت دوم | |
در قسمت قبل این مقاله دیدید که چگونه به کمک وب سرویس گوگل در وب جستجو می کنیم. در قسمت دوم خواهیم دید که چگونه می توان یک موتور جستجوی شبه گوگل ایجاد کرد.
مهمترین و اصلی ترین و پر کارترین تابع در کد بالا DisplaySearchResults است که وب سرویس را فراخوانی می کند، داده ها را به دیتالیست مقید ( bind ) می کند و اطلاعات متفرقه در مورد نتیجه پیدا شده مثل عدد تخمینی تعداد نتایج، زمان اجرای کوئری و... را نمایش می دهد. این تابع همچنین فعال یا غیر فعال بودن دکمه لینکی مربوط به صفحه بندی نتایج را مشخص می کند. هنگامی که وب سرویس را فراخوانی می کنیم، باید شاخص شروع نتایج و نیز تعداد نتایجی که می خواهیم در یک صفحه ببینیم را مشخص کنیم. برای اینکه 10 رکورد اول نتایج جستجو را ببینیم، عدد صفر را به عنوان شاخص شروع و عدد 10 را به عنوان تعداد رکوردهای بازگشتی پاس می کنیم. برای دیدن 10 نتیجه بعدی، فقط کافی است که عدد 10 را به عنوان شاخص شروع پاس کنیم (تعداد رکوردهای بازگشتی در این حالت هم همان 10 تاست). توجه کنید که ViewState برای مدیریت عدد شاخص شروع به کار رفته است. تعداد رکوردهایی که در هر صفحه نمایش داده می شوند توسط ثابت PAGE_SIZE مشخص می شود. برای امکان صفحه بندی نتایج از دو دکمه لینکی استفاده شده است که وقتی روی آن ها کلیک می شود هندلرهای nextRecs و prevRecs شروع به کار می کنند. این هندلرها تنها عدد شروع رکوردها را به روز رسانی کرده و سپس DisplaySearchResults() را فراخوانی می کنند. یک نکته مهم در رابطه با وب سرویس گوگل : API وب سرویس گوگل در حال حاضر در مرحله تست بتا قرار دارد و تنها برای مصارف شخصی آماده شده است، برای محدود کردن استفاده افراطی، گوگل از استفاده کنندگان این سرویس می خواهد تا یک license key منحصر به فرد داشته باشند (که به صورت مجانی قابل دریافت است)، توضیح روش دریافت license key در قسمت اول این مقاله آمده است . این license key برای محدود کردن فراخوانی وب سرویس به کمتر از 1000 بار در روز استفاده می شود. لطفا api license terms را برای استفاده از وب سرویس گوگل مطالعه کنید. |