Todos os produtos
Search
Central de documentação

Edge Security Acceleration:BatchDeleteKvWithHighCapacity

Última atualização: Jun 29, 2026

Exclui em lote pares chave-valor de um namespace KV especificado com base em uma lista especificada de nomes de chaves. O tamanho máximo do corpo da solicitação é 100 MB.

Descrição da operação

Importante Pré-requisitos para chamadas sem SDK: (1) Você deve ter um bucket OSS com permissões de leitura e gravação. (2) Você deve ser capaz de gerar uma URL HTTPS GET pré-assinada usando o SDK ou API do OSS. (3) O arquivo JSON carregado deve usar o mesmo formato do corpo da solicitação BatchDeleteKv.
.

Esta operação fornece a mesma funcionalidade que BatchDeleteKv, mas permite um corpo de solicitação maior. Se o corpo da solicitação for pequeno, use a operação BatchDeleteKv para reduzir o tempo de processamento no servidor. Esta operação deve ser chamada usando um SDK. Por exemplo, ao usar o SDK Golang, chame a função BatchDeleteKvWithHighCapacityAdvance.

func TestBatchDeleteWithHighCapacity() error {
	// Initialize the configuration
	cfg := new(openapi.Config)
	cfg.SetAccessKeyId("xxxxxxxxx")
	cfg.SetAccessKeySecret("xxxxxxxxxx")
	cli, err := NewClient(cfg)
	if err != nil {
		return err
	}
	runtime := &util.RuntimeOptions{}.

	// Construct the batch delete request for key-value pairs
	namespace := "test_batch_put"
	rawReq := BatchDeleteKvRequest{
		Namespace: &namespace,
	}
	for i := 0; i < 10000; i++ {
		key := fmt.Sprintf("test_key_%d", i)
		rawReq.Keys = append(rawReq.Keys, &key)
	}
	payload, err := json.Marshal(rawReq)
	if err != nil {
		return err
	}.

	// If the payload is larger than 2 MB, call the high-capacity operation to delete the key-value pairs
	reqHighCapacity := BatchDeleteKvWithHighCapacityAdvanceRequest{
		Namespace: &namespace,
		UrlObject: bytes.NewReader(payload),
	}
	resp, err := cli.BatchDeleteKvWithHighCapacityAdvance(&reqHighCapacity, runtime)
	if err != nil {
		return err
	}
	return nil
}.

Experimente agora

Experimente esta API no OpenAPI Explorer, sem necessidade de assinatura manual. Chamadas bem-sucedidas geram automaticamente código SDK correspondente aos seus parâmetros. Faça o download com segurança de credenciais integrada para uso local.

Testar

Autorização RAM

Nenhuma autorização necessária para esta operação. Se você encontrar problemas com esta operação, entre em contato com o suporte técnico.

Parâmetros da solicitação

Parâmetro

Tipo

Obrigatório

Descrição

Exemplo

Namespace

string

Sim

O nome do namespace especificado quando você chamou CreateKvNamespace.

test_namespace

Url

string

Sim

A URL de download que contém os pares chave-valor a serem excluídos em lote, como uma URL de download do OSS com permissões de leitura.

  • Quando você chama esta operação usando o SDK, o SDK carrega automaticamente o conteúdo para o OSS e passa a URL correspondente.

  • Para chamar esta operação diretamente, carregue o payload JSON (no mesmo formato do corpo do BatchDeleteKv: {"Namespace":"...","Keys":[...]}) para um bucket OSS e gere uma URL HTTPS GET assinada.

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

Elementos de resposta

Elemento

Tipo

Descrição

Exemplo

object

Schema da resposta.

RequestId

string

O ID da solicitação.

EEEBE525-F576-1196-8DAF-2D70CA3F4D2F

FailKeys

array

A lista de chaves que falharam ao ser excluídas.

string

O nome da chave que falhou ao ser excluída.

test_key1

SuccessKeys

array

A lista de chaves que foram excluídas com sucesso.

string

O nome da chave que foi excluída com sucesso.

test_key1

Exemplos

Resposta de sucesso

JSON formato

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

Códigos de erro

Código de status HTTP

Código de erro

Mensagem de erro

Descrição

400 InvalidAccount.Malformed The specified account is invalid. The account number is not entered correctly, for example, the input is empty.
400 InvalidNameSpace.Malformed The specified namespace is invalid. The bucket name is entered incorrectly, such as an empty string.
400 InvalidKey.Malformed The specified key is invalid. Key name input error, such as entering an empty string.
400 InvalidKey.ExceedsMaximum The size of the key cannot exceed 512 bytes. The length of the requested key is too large.
400 InvalidValue.ExceedsMaximum The size of the value cannot exceed 2,000,000 bytes. The value deposited is too large.
403 InvalidKey.ExceedsCapacity The maximum capacity of a single namespace cannot exceed 1 GB. The capacity of the storage space exceeds the limit.
403 Unauthorized.InvalidParameters The specified authentication parameters are invalid. Authentication parameter input error.
403 Unauthorized.InvalidTime The specified authentication time is invalid. The authentication time parameter you entered is invalid. Check the parameter value and try again.
403 Unauthorized.InvalidToken Token authentication failed. The token you entered is invalid. Please check and enter the correct token and try again.
404 InvalidAccount.NotFound The specified account does not exist. The specified account does not exist.
404 InvalidNameSpace.NotFound The specified namespace does not exist.
404 InvalidKey.NotFound The specified key does not exist. The specified key-value pair does not exist.
406 InvalidNameSpace.Duplicate The specified namespace already exists. Specified storage space
406 InvalidNameSpace.QuotaFull The maximum number of namespaces is exceeded. The number of storage spaces exceeds the capacity limit.
429 TooManyRequests Too many requests are submitted. Submissions are too frequent, please try again later
429 TooQuickRequests Request for putting or deleting keys are frequently submitted. The modification or deletion of key-value pairs is too frequent.

Consulte Códigos de Erro para uma lista completa.

Notas de versão

Consulte Notas de Versão para uma lista completa.