首页 > 解决方案 > 带有令牌示例的 .NET FHIR 客户端

问题描述

正在寻找一个利用fhir-net-api创建 FHIR 客户端服务器端并将授权令牌从智能 on fhir 客户端应用程序传递回我的 Web 服务器的示例以调用生成/有效令牌的 FHIR 服务器,并且在调用 .net fhir 文档中的 FHIR 服务器之前没有找到任何将令牌添加到 FHIR 客户端的示例,因为这些示例都命中了公共端点。

我只是将其添加为搜索参数,还是在调用需要令牌的非公共 API 时需要做些什么来利用令牌?我注意到搜索参数中有一个令牌类型,但不知道如何利用它......这是对观察端点进行通用搜索调用的基本示例,我认为我需要将令牌添加为搜索参数:

_fhirClient = new FhirClient(openApi);
_fhirClient.PreferredFormat = ResourceFormat.Json;
_fhirSearchParamaters = new SearchParams();
_fhirSearchParamaters.Add("patient", mrn);
//Not sure where to add this token to the FHIR client 
//before executing the search call to get the bundle from the FHIR server...
_fhirSearchParamaters.Add("token", token);
_fhirSearchParamaters.Add("code", "58941-6");
//return the bundle from the FHIR server
return _fhirClient.Search(_fhirSearchParamaters);

标签: .nethl7-fhir

解决方案


您可以在客户端的 OnBeforeRequest 事件中为调用添加标头,如下所示:

_fhirClient.OnBeforeRequest += (object sender, BeforeRequestEventArgs e) =>
{
        // Replace with a valid bearer token for the server
        e.RawRequest.Headers.Add("Authorization", "Bearer XXXXXXX");
};

这方面的文档可以在这里找到:http: //docs.simplifier.net/fhirnetapi/client/request-response.html#fhirclient-event-handlers


推荐阅读