Ao desenvolver serviços CAP, muitas vezes me deparo com testes de ações e funções, pois os padrões de URI variam de acordo com a ação/função, se está vinculada ou não vinculada, e a versão do OData. Por isso, decidi escrever esta breve postagem no meu blog como referência. Espero que também ajude alguém mais.
Para testar os exemplos abaixo, clone o seguinte repositório do GitHub e execute
cds watch
.
https://github.com/miyasuta/actions-and-functions
*As ações não podem ser testadas a partir do navegador. Utilize ferramentas como
Postman
ou
REST Client
(extensão do VS Code) e envie uma solicitação POST.
Para obter mais informações sobre ações e funções do CAP, e o que são ações/funções vinculadas/não vinculadas, consulte o documento abaixo.
https://cap.cloud.sap/docs/cds/cdl#actions
OData V4
Ações
Padrões gerais
-
Ação vinculada
:
pathToService/EntitySet(key)/ServiceName.actionName
-
Ação não vinculada
:
pathToService/actionName
Exemplos
Tenha em mente que é necessário o cabeçalho
content-type: application/json
, mesmo que a ação não exija parâmetros.