Compartilhar via


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