Method: hashLists.batchGet

چندین لیست هش را به طور همزمان دریافت کنید.

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

این یک روش استاندارد دسته ای دریافت است که توسط https://google.aip.dev/231 تعریف شده است و روش HTTP نیز GET است.

درخواست HTTP

GET https://safebrowsing.googleapis.com/v5alpha1/hashLists:batchGet

URL از دستور GRPC Transcoding استفاده می کند.

پارامترهای پرس و جو

پارامترها
names[]

string

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

version[]

string ( bytes format)

نسخه هایی از لیست هش که مشتری از قبل دارد. اگر این اولین بار است که مشتری لیست های هش را واکشی می کند، فیلد باید خالی بماند. در غیر این صورت، کلاینت باید نسخه هایی را که قبلاً از سرور دریافت کرده است، ارائه کند. کلاینت نباید آن بایت ها را دستکاری کند.

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

یادداشت تاریخی: در V4 از API، این states نامیده می شد. اکنون برای وضوح به version تغییر نام داده شده است.

رشته ای با کد base64.

desiredHashLength

enum ( HashLength )

طول پیشوند هش مورد نظر هش های برگشتی بر حسب بایت. سپس سرور تمام پیشوندهای هش را در این طول مشخص شده برمی گرداند.

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

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

sizeConstraints

object ( SizeConstraints )

محدودیت اندازه در هر لیست. اگر حذف شود، هیچ محدودیتی وجود ندارد. توجه داشته باشید که اندازه‌ها در اینجا به‌ازای هر فهرست هستند، در همه فهرست‌ها جمع‌آوری نشده‌اند.

درخواست بدن

بدنه درخواست باید خالی باشد.

بدن پاسخگو

پاسخ حاوی چندین لیست هش است.

در صورت موفقیت آمیز بودن، بدنه پاسخ حاوی داده هایی با ساختار زیر است:

نمایندگی JSON
{
  "hashLists": [
    {
      object (HashList)
    }
  ]
}
فیلدها
hashLists[]

object ( HashList )

لیست های هش به همان ترتیبی که در درخواست ارائه شده است.