Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Para interagir com nuget.org, os clientes precisam seguir determinados protocolos. Como esses protocolos continuam evoluindo, os clientes devem identificar a versão do protocolo que usam ao chamar APIs nuget.org específicas. Isso permite que nuget.org introduzam mudanças de forma ininterrupta para os clientes antigos.
Observação
As APIs documentadas nesta página são específicas para nuget.org e não há expectativa de que outras implementações de servidor NuGet introduzam essas APIs.
Para obter informações sobre a API do NuGet implementada amplamente em todo o ecossistema do NuGet, consulte a visão geral da API.
Este tópico lista vários protocolos à medida que eles passam a existir.
Protocolo NuGet versão 4.1.0
O protocolo 4.1.0 especifica o uso de chaves de escopo de verificação para interagir com serviços diferentes de nuget.org, para validar um pacote em relação a uma conta nuget.org. Observe que o número da 4.1.0 versão é uma cadeia de caracteres opaca, mas coincide com a primeira versão do cliente NuGet oficial que suportava esse protocolo.
A validação garante que as chaves de API criadas pelo usuário sejam usadas apenas com nuget.org e que outra verificação ou validação de um serviço de terceiros seja tratada por meio de chaves de escopo de verificação de uso único. Essas chaves de escopo de verificação podem ser usadas para validar se o pacote pertence a um usuário específico (conta) no nuget.org.
Requisitos do cliente
Os clientes são obrigados a passar o seguinte cabeçalho quando fazem chamadas de API para enviar pacotes para nuget.org usando push:
X-NuGet-Protocol-Version: 4.1.0
Observe que o X-NuGet-Client-Version cabeçalho tem semântica semelhante, mas está reservado para ser usado apenas pelo cliente NuGet oficial. Clientes de terceiros devem usar o cabeçalho X-NuGet-Protocol-Version e o respetivo valor.
O protocolo push em si é descrito na documentação do PackagePublish recurso.
Se um cliente interage com serviços externos e precisa validar se um pacote pertence a um determinado usuário (conta), ele deve usar o seguinte protocolo e usar as chaves de escopo de verificação e não as chaves de API de nuget.org.
API para solicitar uma chave de verificação de escopo
Essa API é usada para obter uma chave de escopo de verificação para um autor de nuget.org validar um pacote de sua propriedade.
POST api/v2/package/create-verification-key/{ID}/{VERSION}
Parâmetros de solicitação
| Nome | In | Tipo | Obrigatório | Observações |
|---|---|---|---|---|
| ID | URL | cadeia (de caracteres) | yes | O identificador do pacote para o qual a chave de escopo de verificação é solicitada |
| VERSION | URL | cadeia (de caracteres) | no | A versão do pacote |
| X-NuGet-ApiKey | Header | cadeia (de caracteres) | yes | Por exemplo, X-NuGet-ApiKey: {USER_API_KEY} |
Resposta
{
"Key": "{Verify scope key from nuget.org}",
"Expires": "{Date}"
}
API para verificar a chave de verificação do escopo
Essa API é usada para validar uma chave de verificação de escopo para um pacote de propriedade de um autor do nuget.org.
GET api/v2/verifykey/{ID}/{VERSION}
Parâmetros de solicitação
| Nome | In | Tipo | Obrigatório | Observações |
|---|---|---|---|---|
| ID | URL | cadeia (de caracteres) | yes | O identificador do pacote para o qual a chave de escopo de verificação é solicitada |
| VERSION | URL | cadeia (de caracteres) | no | A versão do pacote |
| X-NuGet-ApiKey | Header | cadeia (de caracteres) | yes | Por exemplo, X-NuGet-ApiKey: {VERIFY_SCOPE_KEY} |
Observação
Essa chave de API de escopo de verificação expira em um dia ou no primeiro uso, o que ocorrer primeiro.
Resposta
| Código de estado | Meaning |
|---|---|
| 200 | A chave da API é válida |
| 403 | A chave da API é inválida ou não está autorizada a enviar para o pacote |
| 404 | O pacote referido por ID e VERSION (opcional) não existe |