Diagnosticar e solucionar problemas de exceções de solicitação inadequadas no Azure Cosmos DB
APLICA-SE A: NoSQL
O código de status HTTP 400 representa a solicitação que contém dados inválidos ou com parâmetros necessários ausentes.
Propriedade da ID ausente
Neste cenário, é comum ver o erro:
O conteúdo de entrada é inválido porque as propriedades obrigatórias – "id; " – estão ausentes
Uma resposta com esse erro significa que o documento JSON que está sendo enviado para o serviço não tem a propriedade de ID necessária.
Solução
Especifique uma propriedade id
com um valor de cadeia de caracteres de acordo com a especificação REST como parte do documento, já que os SDKs não geram valores automaticamente para essa propriedade.
Tipo de chave de partição inválida
Neste cenário, é comum ver erros como:
Chave de partição ... é inválida.
Uma resposta com esse erro significa que o valor da chave de partição é de um tipo inválido.
Solução
O valor da chave de partição deve ser uma cadeia de caracteres ou um número. Verifique se o valor é do tipo esperado.
Valor de chave de partição incorreto
Neste cenário, é comum ver o erro:
O código de status de resposta não indica êxito: BadRequest (400); Substatus: 1001
PartitionKey extraído do documento não corresponde ao especificado no cabeçalho
Uma resposta com esse erro significa que você está executando uma operação e passando um valor de chave de partição que não corresponde ao valor de corpo do documento para a propriedade esperada. Se o caminho da chave de partição da coleção for /myPartitionKey
, o documento terá uma propriedade chamada myPartitionKey
com um valor que não corresponde ao que foi fornecido como valor de chave de partição ao chamar o método SDK.
Solução
Envie o parâmetro de valor da chave de partição que corresponde ao valor da propriedade do documento.
Perda de precisão do valor da chave de partição numérica
Neste cenário, é comum ver erros como:
A chave de partição solicitada está fora do intervalo de chaves, possivelmente devido à perda de precisão do valor da chave de partição
Uma resposta com esse erro provavelmente é causada por uma operação em um documento com uma chave de partição numérica cujo valor está fora do que é compatível no Azure Cosmos DB. Consulte Limites por item para obter o comprimento máximo do valor da propriedade numérica.
Solução
Considere usar o tipo string
para chave de partição se exigir valores numéricos precisos.
Próximas etapas
- Diagnosticar e solucionar problemas ao usar o SDK do .NET para o Azure Cosmos DB.
- Saiba mais sobre as diretrizes de desempenho para o .NET v3 e o .NET v2.
- Diagnosticar e solucionar problemas ao usar o SDK do Java v4 para o Azure Cosmos DB.
- Saiba mais sobre as diretrizes de desempenho para o SDK do Java v4.