すべてのプロダクト
Search
ドキュメントセンター

Edge Security Acceleration:BatchPutKvWithHighCapacity

最終更新日:Jun 22, 2026

指定されたキー名のリストに基づいて、指定された KV 名前空間にキーと値のペアをバッチセットします。最大リクエストボディサイズは 100 MB です。

操作説明

この操作は BatchPutKv と同じ機能を提供しますが、より large なリクエストボディを許可します。リクエストボディが small の場合は、 BatchPutKv 操作を使用してサーバー側の処理時間を短縮してください。この操作は SDK を使用して呼び出す必要があります。たとえば、Golang SDK を使用する場合は、BatchPutKvWithHighCapacityAdvance 関数を呼び出します。

func TestBatchPutKvWithHighCapacity() error {
	// 構成を初期化します
	cfg := new(openapi.Config)
	cfg.SetAccessKeyId("xxxxxxxxx")
	cfg.SetAccessKeySecret("xxxxxxxxxx")
	cli, err := NewClient(cfg)
	if err != nil {
		return err
	}
	runtime := &util.RuntimeOptions{}.

	// バッチアップロード用のキーと値のペアを構築します
	namespace := "test_batch_put"
	numKv := 10000
	kvList := make([]*BatchPutKvRequestKvList, numKv)
	test_value := strings.Repeat("a", 10*1024)
	for i := 0; i < numKv; i++ {
		key := fmt.Sprintf("test_key_%d", i)
		value := test_value
		kvList[i] = &BatchPutKvRequestKvList{
			Key:   &key,
			Value: &value,
		}
	}
	rawReq := BatchPutKvRequest{
		Namespace: &namespace,
		KvList:    kvList,
	}.

	payload, err := json.Marshal(rawReq)
	if err != nil {
		return err
	}.

	// ペイロードが 2 MB より large の場合、大容量操作を呼び出してアップロードします
	reqHighCapacity := BatchPutKvWithHighCapacityAdvanceRequest{
		Namespace: &namespace,
		UrlObject: bytes.NewReader(payload),
	}
	resp, err := cli.BatchPutKvWithHighCapacityAdvance(&reqHighCapacity, runtime)
	if err != nil {
		return err
	}
	return nil
}.

今すぐお試しください

この API を OpenAPI Explorer でお試しください。手作業による署名は必要ありません。呼び出しに成功すると、入力したパラメーターに基づき、資格情報が組み込まれた SDK コードが自動的に生成されます。このコードをダウンロードしてローカルで使用できます。

テスト

RAM 認証

この操作の認証情報はありません。問題が発生した場合は、アカウントマネージャーにご連絡ください。

リクエストパラメーター

パラメーター

必須 / 任意

説明

Namespace

string

必須

CreateKvNamespace を呼び出したときに指定した名前空間名。

test_namespace

Url

string

必須

バッチセットするキーと値のペアを含む JSON ファイルを指すパブリックアクセス可能な HTTP(S) URL。サーバーはこの URL からコンテンツを能動的にダウンロードします。

  • SDK を使用する場合、SDK が自動的にファイルをアップロードし、URL を生成します。

  • SDK を使用しない場合は、JSON ペイロードを任意のパブリックアクセス可能な HTTP サービスにアップロードし、URL を指定します。

URL が指すファイルの内容は、次の JSON フォーマットである必要があります: {"Namespace":"<名前空間名>","KvList":[{"Key":"<キー>","Value":"<値>"},...]}.URL の内容がこのフォーマットと一致しない場合、API は空の SuccessKeys 配列をサイレントに返します。

https://xxxobject.oss-cn-reginon.aliyuncs.com/9d91_xxxxxxxxxxx_158bb6e0f97c477791209bb46bd599f7

レスポンスフィールド

フィールド

説明

object

レスポンスのスキーマ。

RequestId

string

リクエスト ID。

EEEBE525-F576-1196-8DAF-2D70CA3F4D2F

FailKeys

array

書き込みに失敗したキーのリスト。

string

書き込みに失敗したキー名。

test_key1

SuccessKeys

array

書き込みに成功したキーのリスト。

string

書き込みに成功したキー名。

test_key2

成功レスポンス

JSONJSON

{
  "RequestId": "EEEBE525-F576-1196-8DAF-2D70CA3F4D2F",
  "FailKeys": [
    "test_key1"
  ],
  "SuccessKeys": [
    "test_key2"
  ]
}

エラーコード

HTTP ステータスコード

エラーコード

エラーメッセージ

説明

400 InvalidAccount.Malformed The specified account is invalid.
400 InvalidNameSpace.Malformed The specified namespace is invalid.
400 InvalidKey.Malformed The specified key is invalid.
400 InvalidKey.ExceedsMaximum The size of the key cannot exceed 512 bytes.
400 InvalidValue.ExceedsMaximum The size of the value cannot exceed 2,000,000 bytes.
403 InvalidKey.ExceedsCapacity The maximum capacity of a single namespace cannot exceed 1 GB.
403 Unauthorized.InvalidParameters The specified authentication parameters are invalid.
403 Unauthorized.InvalidTime The specified authentication time is invalid.
403 Unauthorized.InvalidToken Token authentication failed.
404 InvalidAccount.NotFound The specified account does not exist.
404 InvalidNameSpace.NotFound The specified namespace does not exist.
404 InvalidKey.NotFound The specified key does not exist.
406 InvalidNameSpace.Duplicate The specified namespace already exists.
406 InvalidNameSpace.QuotaFull The maximum number of namespaces is exceeded.
429 TooManyRequests Too many requests are submitted.
429 TooQuickRequests Request for putting or deleting keys are frequently submitted.

完全なリストについては、「エラーコード」をご参照ください。

変更履歴

完全なリストについては、「変更履歴」をご参照ください。