1. アップロード

アップロード クライアント

Version:
日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

SDK は、事前定義された設定を使用して、ファイルを Sitecore Content Hub インスタンスにアップロードするためのアップロード クライアントを提供します。現在サポートされている設定は次のとおりです。

  • パッケージのインポート
  • アセットの作成
  • アセットのメイン ファイルの更新
  • アセットの代替ファイルの更新
注意

次のコード例の client 変数は IMClient インスタンスを意味します。Web SDK を使用する場合、変数名は自由に選択できますが、ドキュメントの例では client という名前が使われています。

ローカル ソースからのパッケージのアップロードおよびインポート

たとえば、次のスニペットは、ImportPackageConfiguration を使用してパッケージをアップロードおよびインポートします。

var uploadSource = new LocalUploadSource("C:\\my-package.zip");

var request = new UploadRequest(uploadSource, "ImportPackageConfiguration", "Import")
{
ActionParameters =
{
{ "Type", "Package" }
}
};

// Initiate upload and wait for its completion.
var response = await client.Uploads.UploadAsync(request).ConfigureAwait(false);

ローカル ファイルからアセットをアップロードして作成する

たとえば、次のスニペットは、AssetUploadConfiguration を使用してパッケージをアップロードおよび作成します。

var uploadSource = new LocalUploadSource("C:\\my-image.jpg", "my-image.jpg");

var request = new UploadRequest(uploadSource, "AssetUploadConfiguration", "NewAsset");

// Initiate upload and wait for its completion.
var response = await client.Uploads.UploadAsync(request).ConfigureAwait(false);

// Extract ID of newly created asset from the location header.
var responseId = await client.LinkHelper.IdFromEntityAsync(response.Headers.Location).ConfigureAwait(false);

バイト配列からアセットをアップロードして作成する

警告

ByteArrayUploadSource を使用してローカル ファイルをアップロードすることは避けてください。コンテンツ全体がメモリに保持され、基になる配列ベースの実装には約 2 ギガバイトの制限が適用されます。上記の LocalUploadSource の使用例を参照してください。

たとえば、次のスニペットは、AssetUploadConfiguration を使用してパッケージをアップロードおよび作成します。

// `RetrieveBytes` is an arbitrary helper method for demonstration purposes to fetch the byte[] from a source.
var bytes = await RetrieveBytes().ConfigureAwait(false);
var uploadSource = new ByteArrayUploadSource(bytes, "my-image.jpg");

var request = new UploadRequest(uploadSource, "AssetUploadConfiguration", "NewAsset");

// Initiate upload and wait for its completion.
var response = await client.Uploads.UploadAsync(request).ConfigureAwait(false);

// Extract ID of newly created asset from the location header.
var responseId = await client.LinkHelper.IdFromEntityAsync(response.Headers.Location).ConfigureAwait(false);

リモート ソースからのアセットのアップロードおよび作成

たとえば、次のスニペットは、AssetUploadConfiguration を使用してパッケージをアップロードおよび作成します。

var uri = new Uri("https://picsum.photos/200", UriKind.Absolute);
var uploadSource = new HttpUploadSource(_client, uri);

var request = new UploadRequest(uploadSource, "AssetUploadConfiguration", "NewAsset");

// Initiate upload and wait for its completion.
var response = await client.Uploads.UploadAsync(request).ConfigureAwait(false);

// Extract ID of newly created asset from the location header.
var responseId = await client.LinkHelper.IdFromEntityAsync(response.Headers.Location).ConfigureAwait(false);
この記事を改善するための提案がある場合は、 お知らせください!