Shopify GraphQL Admin APIで20メガピクセルを超える画像をアップロードしたら消えた

Shopify GraphQL Admin API で20メガピクセルを超える画像をアップロードすると消えることが分かったので、ご紹介します。

Shopify | ショッピファイ

背景 Shopify GraphQL Admin API で20メガピクセルを超える画像をアップロードしたら消えた

Shopify GraphQL Admin API mutation productCreateproductUpdate で20メガピクセルを超える画像を指定すると消えてしまいました。

対策 画像サイズのバリデーション

対策としては、画像アップロード処理にメガピクセルとファイルサイズ (メガバイト単位) の両方について validation を追加することが考えられます。

アップロード制限

Shopifyへの画像アップロードには、メガピクセルとファイルサイズ (メガバイト単位) の両方で制限があります。メガピクセルは、画像のピクセル構成数 (百万単位) を示すために使用されます。メガバイトは、画像が占めるメモリまたはディスクスペースの数 (百万単位) を示すために使用されます。

次のいずれかの制限を超える画像をShopifyにアップロードすることはできません。

  • 20メガピクセル
  • 20メガバイト

画像のメガピクセルを知るには、(pixel width x pixel height)/1,000,000を使用します。たとえば、解像度4900 x 6930の画像は、(4900×6930)/1,000,000 = 33.9 MPなので、33.9メガピクセルとなります。

引用元: 画像のアップロード · Shopify ヘルプセンター

以上、Shopify GraphQL Admin API で20メガピクセルを超える画像をアップロードしたら消えて困った、現場からお送りしました。