Introdução
Ao desenvolver aplicações na
Plataforma Tecnológica Empresarial da SAP
(BTP), muitas vezes você naturalmente chega ao ponto em que deseja testar certas funções através de APIs. Essas funções podem ser em sua própria aplicação ou serviços fornecidos pelo
BTP
. Até agora, tenho usado principalmente o cliente de API
Postman
, porque oferece muitas funcionalidades e facilita muito o desenvolvimento e teste. Por exemplo,
Postman
torna muito mais fácil para você usar
OAuth 2.0
como um mecanismo de autorização ao chamar as APIs e até mesmo define corretamente as linhas de cabeçalho HTTP em sua solicitação. Por outro lado, você pode perder um pouco da compreensão do que realmente está acontecendo (a menos que você verifique o console).
Recentemente, em meu papel como Consultor de Educação da SAP, estava trabalhando em um novo treinamento para
Gestão de Fluxos de Trabalho da SAP
e como este é um produto no
BTP
, a maior parte do desenvolvimento acontece no
Estúdio de Aplicativos Empresariais da SAP
(SBAS). Como o
SBAS
é um ambiente de desenvolvimento na nuvem, é muito conveniente para uso em treinamentos, pois os participantes não precisam do software em suas máquinas locais. Além disso, sessões WTS irritantes não são mais necessárias, você simplesmente trabalha em seu navegador. Foi nesse ponto que me deparei com o problema de não querer usar
Postman
, pelo menos nessas configurações. Eu quero poder demonstrar solicitações de API em um ambiente de treinamento leve, fácil de replicar. Felizmente,
SBAS
possui uma extensão que é integrada por padrão, a extensão
REST Client
. Neste post, quero descrever algumas características básicas da extensão
REST Client
com base em uma chamada de API do
Serviço de Fluxos de Trabalho da SAP
que requer autorização
OAuth 2.0
usando tanto o tipo de concessão
Authorization Code
quanto o tipo de concessão
Client Credentials
.
Para entender e iniciar o fluxo de
Authorization Code do OAuth 2.0
, este artigo do blog por
carlos.roggan
foi muito útil para mim.
Cenário
Nota:
O cenário que vou mostrar pode parecer específico para
Gestão de Fluxos de Trabalho da SAP
, mas tudo neste post é aplicável a qualquer cenário em que você deseja testar a integração de API com outras aplicações e serviços da
BTP
.
O
Serviço de Fluxos de Trabalho da SAP
oferece uma ampla variedade de endpoints de API para gerenciar fluxos de trabalho e tarefas. Ao construir seus próprios fluxos de trabalho, você pode querer iniciar instâncias dos fluxos de trabalho para fins de teste. Por padrão, isso é possível através do aplicativo Fiori
Gerenciar Fluxos de Trabalho
. Mas durante o desenvolvimento, pode ser inconveniente mudar para uma interface de usuário diferente e exigir muitos cliques adicionais para iniciar um fluxo de trabalho. Além disso, em um ambiente produtivo, os fluxos de trabalho geralmente serão acionados por meio de outras aplicações como interfaces de início, que usam APIs em segundo plano. Portanto, você deseja usar APIs para testes para ser mais flexível e estar o mais próximo possível do caso de uso final. Use
SAP API Business Hub
para descobrir APIs da SAP e opções de integração para seu cenário.
Como o
Serviço de Fluxos de Trabalho da SAP
API requer autorização
OAuth 2.0
, quero mostrar como ativar o endpoint da API para iniciar uma nova instância de fluxo de trabalho usando o fluxo de
Client Credentials
e o fluxo de
Authorization Code
. Estarei usando a extensão de
REST Client
em
SBAS
para ser independente da plataforma durante o desenvolvimento.
O endpoint da API do Serviço de Fluxos de Trabalho que vou ativar, encontrado no SAP API Business Hub
Cliente REST do Estúdio de Aplicativos Empresariais da SAP
Ao escrever este post em um contexto da SAP, estou me referindo à extensão do
Cliente REST do Estúdio de Aplicativos Empresariais da SAP
, embora na realidade o
Cliente REST
seja uma extensão do
Microsoft Visual Studio Code
(