بارگذاری رسانه

قابلیت آپلود رسانه به شما امکان می‌دهد داده‌هایی را که می‌توانید در Display & Video 360 استفاده کنید، ذخیره کنید. نوع داده‌هایی که ممکن است بخواهید آپلود کنید شامل عکس، ویدیو، فایل‌های فشرده و غیره است.

گزینه‌های آپلود

رابط برنامه‌نویسی کاربردی Display & Video 360 به شما امکان می‌دهد انواع خاصی از داده‌های دودویی یا رسانه را آپلود کنید. ویژگی‌های داده‌هایی که می‌توانید آپلود کنید، در راهنمای توسعه‌دهندگان برای هر کاری که نیاز به آپلود رسانه دارد، به تفصیل شرح داده شده است:

  • حداکثر حجم فایل آپلودی : حداکثر حجم داده‌ای که می‌توانید با این روش ذخیره کنید.
  • انواع MIME رسانه‌های پذیرفته‌شده : انواع داده‌های دودویی که می‌توانید با استفاده از این روش ذخیره کنید.

شما می‌توانید درخواست‌های آپلود را به هر یک از روش‌های زیر ارسال کنید. متدی را که استفاده می‌کنید با پارامتر uploadType مشخص کنید.

  • آپلود ساده : uploadType=media . انتقال سریع فایل‌هایی با حجم تقریبی ۵ مگابایت یا کمتر.
  • آپلود چندبخشی : uploadType=multipart . انتقال سریع فایل‌ها و فراداده‌های مربوطه. فایل و فراداده‌ها را، همه در یک درخواست واحد، منتقل می‌کند.

وقتی رسانه‌ای را آپلود می‌کنید، از آدرس اینترنتی /upload استفاده می‌کنید. از این آدرس اینترنتی هنگام انتقال خود داده‌های رسانه‌ای استفاده کنید.

مثال:

  POST /upload/media/resource-name

آپلود ساده

یک درخواست آپلود ساده، سرراست‌ترین روش برای آپلود فایل است. این روش در موارد زیر انتخاب خوبی است:

  • فایل به اندازه کافی کوچک است که در صورت لزوم دوباره آپلود شود.
  • هیچ فراداده‌ای برای ارسال وجود ندارد. این ممکن است در صورتی درست باشد که فراداده ضروری نباشد یا در جای دیگری از درخواست گنجانده شده باشد.

برای استفاده از آپلود ساده، یک درخواست POST یا PUT به آدرس /upload مربوط به متد ارسال کنید و پارامتر کوئری uploadType=media اضافه کنید. برای مثال:

  POST https://displayvideo.googleapis.com/upload/media/resource-name?uploadType=media

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

  • Content-Type . روی یکی از انواع داده رسانه‌ای پذیرفته‌شده توسط متد تنظیم می‌شود.
  • Content-Length . روی تعداد بایت‌هایی که آپلود می‌کنید تنظیم می‌شود. اگر از کدگذاری انتقال تکه‌ای (chunked transfer encoding) استفاده می‌کنید، لازم نیست.

آپلود چند قسمتی

اگر می‌خواهید همراه با داده‌های آپلود شده، فراداده (metadata) ارسال کنید، می‌توانید یک درخواست multipart/related ارسال کنید. این گزینه خوبی است اگر داده‌هایی که ارسال می‌کنید به اندازه کافی کوچک باشند که در صورت لزوم دوباره آپلود شوند.

برای استفاده از آپلود چندبخشی، یک درخواست POST یا PUT به آدرس /upload متد ارسال کنید و پارامتر کوئری uploadType=multipart را اضافه کنید. برای مثال:

  POST https://displayvideo.googleapis.com/upload/v4/advertisers/advertiser-id/assets?uploadType=multipart

هدرهای HTTP سطح بالا که هنگام ارسال درخواست آپلود چند قسمتی باید استفاده شوند عبارتند از:

  • Content-Type . روی multipart/related تنظیم کنید و رشته مرزی که برای شناسایی بخش‌های درخواست استفاده می‌کنید را در آن قرار دهید.
  • Content-Length . تعداد کل بایت‌های موجود در بدنه درخواست را تنظیم می‌کند. بخش رسانه درخواست باید کمتر از حداکثر اندازه فایل مشخص شده برای این روش باشد.

بدنه درخواست به صورت یک نوع محتوای multipart/related [ RFC2387 ] قالب‌بندی شده و دقیقاً شامل دو بخش است. بخش‌ها توسط یک رشته مرزی مشخص می‌شوند و رشته مرزی نهایی با دو خط فاصله دنبال می‌شود.

هر بخش از درخواست چندبخشی به یک هدر Content-Type اضافی نیاز دارد:

  1. بخش فراداده (Metadata) : باید در ابتدا قرار گیرد و Content-Type باید با یکی از قالب‌های فراداده پذیرفته‌شده مطابقت داشته باشد.
  2. بخش رسانه : باید در جایگاه دوم قرار گیرد و Content-Type باید با یکی از انواع MIME رسانه‌ای پذیرفته‌شده توسط متد مطابقت داشته باشد.

مثال‌ها

شما با استفاده از Display & Video 360 API رسانه را برای انجام کارهای مختلف آپلود می‌کنید. این بخش نمونه‌هایی را به عنوان درخواست‌های curl ارائه می‌دهد.

بارگذاری دارایی خلاقانه

در اینجا نحوه آپلود یک دارایی خلاقانه آورده شده است:

curl --request POST \
  'https://displayvideo.googleapis.com/upload/v4/advertisers/advertiser-id/assets?uploadType=multipart' \
  --header 'Authorization: Bearer access-token' \
   -F "data={\"filename\": \"asset-filename\"};type=application/json;charset=UTF-8" \
   -F "file=@asset-path;type=asset-mime-type"

برای جزئیات بیشتر و نمونه‌های کد، به راهنمای بارگذاری دارایی‌های خلاقانه مراجعه کنید.

فایل اسکریپت مناقصه سفارشی را بارگذاری کنید

نحوه آپلود فایل اسکریپت به صورت زیر است:

curl --request POST \
  'https://displayvideo.googleapis.com/upload/media/resource-name?uploadType=media' \
  -H 'authorization: Bearer access-token' \
  -H 'Content-Type: text/plain' \
  --data-binary @script-path

برای جزئیات بیشتر و نمونه‌های کد، به راهنمای اسکریپت آپلود مراجعه کنید.