Définit une paire clé-valeur de grande capacité dans un espace de noms KV. La taille maximale de la valeur est de 25 Mo.
Description de l'opération
Cette opération fournit les mêmes fonctionnalités que PutKv, mais permet de charger un corps de requête plus volumineux. Si le corps de la requête est petit, utilisez l'opération PutKv pour réduire le temps de traitement côté serveur. Cette opération doit être appelée à l'aide d'un SDK. Par exemple, lorsque vous utilisez le SDK Golang, appelez la fonction PutKvWithHighCapacityAdvance.
func TestPutKvWithHighCapacity() {
// Configuration initialization
cfg := new(openapi.Config)
cfg.SetAccessKeyId("xxxxxxxxx")
cfg.SetAccessKeySecret("xxxxxxxxxx")
cli, err := NewClient(cfg)
if err != nil {
return err
}
runtime := &util.RuntimeOptions{}.
// Construire la requête de paire clé-valeur à charger
namespace := "test-put-kv"
key := "test_PutKvWithHighCapacity_0"
value := strings.Repeat("t", 10*1024*1024)
rawReq := &PutKvRequest{
Namespace: &namespace,
Key: &key,
Value: &value,
}
payload, err := json.Marshal(rawReq)
if err != nil {
return err
}.
// Si la charge utile dépasse 2 Mo, appelez l'opération de grande capacité pour la charger
reqHighCapacity := &PutKvWithHighCapacityAdvanceRequest{
Namespace: &namespace,
Key: &key,
UrlObject: bytes.NewReader([]byte(payload)),
}.
resp, err := cli.PutKvWithHighCapacityAdvance(reqHighCapacity, runtime)
if err != nil {
return err
}
return nil
}.
Testez maintenant
Testez cette API dans OpenAPI Explorer, sans signature manuelle. Les appels réussis génèrent automatiquement du code SDK correspondant à vos paramètres. Téléchargez-le avec une sécurité intégrée des identifiants pour une utilisation locale. Testez cette API dans OpenAPI Explorer, sans signature manuelle. Les appels réussis génèrent automatiquement du code SDK correspondant à vos paramètres. Téléchargez-le avec une sécurité intégrée des identifiants pour une utilisation locale.
Test
Autorisation RAM
|
esa:PutKvWithHighCapacity |
none |
*All Resource
|
Aucune | Aucune |
Paramètres de requête
|
Paramètre |
Type |
Requis |
Description |
Exemple |
| Namespace |
string |
Oui |
Le nom spécifié lors de l'appel de l'opération CreateKvNamespace. |
test_namesapce |
| Key |
string |
Oui |
Le nom de la clé à définir. Le nom de la clé peut comporter jusqu'à 512 caractères et ne peut pas contenir d'espaces ni de barres obliques (/). |
test_key |
| Url |
string |
Oui |
Une URL HTTP ou HTTPS accessible publiquement qui pointe vers un fichier JSON contenant la paire clé-valeur à définir. Le serveur télécharge le contenu à partir de cette URL.
Le contenu du fichier pointé par l'URL doit être au format JSON suivant : {"Namespace":" |
https://xxxobject.oss-cn-region.aliyuncs.com/9d91_xxxxxxxxxxx_158bb6e0f97c477791209bb46bd599f7 |
Éléments de réponse
|
Élément |
Type |
Description |
Exemple |
|
object |
Schéma de la réponse. |
||
| RequestId |
string |
L'identifiant de la requête. |
EEEBE525-F576-1196-8DAF-2D70CA3F4D2F |
| Length |
string |
La longueur de la valeur dans la paire clé-valeur. |
4 |
| Value |
string |
Le contenu de la valeur. Si le contenu dépasse 256 caractères, les 100 premiers et les 100 derniers caractères sont renvoyés, la partie centrale étant omise. |
test |
Exemples
JSON format
{
"RequestId": "EEEBE525-F576-1196-8DAF-2D70CA3F4D2F",
"Length": "4",
"Value": "test"
}
Codes d'erreur
|
Code de statut HTTP |
Code d'erreur |
Message d'erreur |
Description |
|---|---|---|---|
| 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. |
Consultez Codes d'erreur pour la liste complète.
Notes de version
Consultez Notes de version pour la liste complète.