Acessando os Serviços de Dados de Integridade do Azure usando a Extensão de Cliente REST no Visual Studio Code

Neste artigo, você aprenderá como acessar os Serviços de Dados de Integridade do Azure usando a extensão Cliente REST no Visual Studio Code.

Instalar a extensão do cliente REST

Selecione o ícone Extensões no painel lateral esquerdo do seu código do Visual Studio e procure por "Cliente REST". Encontre a extensão do cliente REST e instale.

REST Client VSCode extension

Criar um .http arquivo e definir variáveis

Crie um novo arquivo no Visual Studio Code. Insira uma linha de comando de GET solicitação no arquivo e salve-a como test.http. O sufixo .http de arquivo ativa automaticamente o ambiente do cliente REST. Selecione Send Request esta opção para obter os metadados.

Send Request

Obter valores de aplicativo cliente

Importante

Antes de chamar a API REST do servidor FHIR (além de obter os metadados), você deve concluir o registro do aplicativo. Anote sua ID de locatário do Azure, ID do cliente, segredo do cliente e a URL do serviço.

Embora você possa usar valores como o ID do cliente diretamente em chamadas para a API REST, é uma boa prática definir algumas variáveis para esses valores e usar as variáveis.

No seu test.http ficheiro, inclua as seguintes informações obtidas através do registo da sua candidatura:

### REST Client
@fhirurl =https://xxx.azurehealthcareapis.com
@clientid =xxx....
@clientsecret =xxx....
@tenantid =xxx....

Obter token de acesso do Microsoft Entra

Depois de incluir as informações abaixo no seu test.http arquivo, clique em Send Request. Você verá uma resposta HTTP que contém seu token de acesso.

A linha que começa com @name contém uma variável que captura a resposta HTTP que contém o token de acesso. A variável, , @tokené usada para armazenar o token de acesso.

Nota

O grant_type de é usado para obter um token de client_credentials acesso.

### Get access token 
# @name getAADToken 
POST https://login.microsoftonline.com/{{tenantid}}/oauth2/token
Content-Type: application/x-www-form-urlencoded

grant_type=client_credentials
&resource={{fhirurl}}
&client_id={{clientid}}
&client_secret={{clientsecret}}

### Extract access token from getAADToken request
@token = {{getAADToken.response.body.access_token}}

Get access token

Nota

Nos cenários em que o parâmetro de audiência de serviço FHIR não é mapeado para a URL do ponto de extremidade do serviço FHIR. O valor do parâmetro resource deve ser mapeado para o valor Audience na folha FHIR Service Authentication.

GET FHIR Dados do doente

Agora você pode obter uma lista de pacientes ou um paciente específico com o GET pedido. A linha com Authorization é a informação do cabeçalho da GET solicitação. Você também pode enviar PUT ou POST solicitações para criar/atualizar recursos FHIR.

### GET Patient 
GET {{fhirurl}}/Patient/<patientid>
Authorization: Bearer {{token}}

GET Patient

Executar PowerShell ou CLI

Você pode executar scripts PowerShell ou CLI no Visual Studio Code. Pressione CTRL a ~ tecla e selecione PowerShell ou Bash. Você pode encontrar mais detalhes em Terminal Integrado.

PowerShell no Visual Studio Code

running PowerShell

CLI no Visual Studio Code

running CLI

Resolução de problemas

Se você não conseguir obter os metadados, que não exigem token de acesso com base na especificação HL7, verifique se o servidor FHIR está funcionando corretamente.

Se você não conseguir obter um token de acesso, verifique se o aplicativo cliente está registrado corretamente e se você está usando os valores corretos da etapa de registro do aplicativo.

Se você não conseguir obter dados do servidor FHIR, certifique-se de que o aplicativo cliente (ou a entidade de serviço) recebeu permissões de acesso como "FHIR Data Contributor" para o servidor FHIR.

Próximos passos

Neste artigo, você aprendeu como acessar dados do Azure Health Data Services usando a extensão de cliente REST no Visual Studio Code.

Para saber como validar recursos FHIR em relação a perfis nos Serviços de Dados de Saúde do Azure, consulte

FHIR® é uma marca registada da HL7 e é utilizada com a permissão da HL7 .