Open Epic FHIR沙箱应用Postman生成OAuth2.0令牌遇invalid_client错误求助
确认Client ID的正确使用
你提到存在Client ID和Non-Production Client ID两个标识,Epic沙箱环境必须使用Non-Production Client ID,切勿混淆为生产环境的Client ID。检查Postman的OAuth2.0配置中,Client ID字段填写的是否为正确的Non-Production值,复制时注意避免多空格或字符遗漏。修正重定向URI
重定向URI必须与你在Epic开发者控制台创建Sandbox App时填写的内容完全一致。你当前设置的fhir.epic.com不符合要求——Epic要求重定向URI为完整URL格式,比如使用Postman自带的回调地址https://oauth.pstmn.io/v1/callback,或者你在控制台注册过的其他合法URI。前往Epic开发者后台核对App的重定向URI列表,确保Postman中填写的内容与其中某一条完全匹配,大小写、斜杠等细节都不能出错。验证Client Secret的正确性
确认Postman里的Client Secret填写的是Sandbox Client Secret,而非生产环境密钥。该密钥复制时容易遗漏末尾字符,建议直接从Epic控制台复制后粘贴,避免手动输入出错。检查OAuth2.0流程配置
在Postman的OAuth2.0设置中:- 授权类型选择
Authorization Code(Epic沙箱的SMART on FHIR采用此流程) - 令牌URL填写Epic沙箱对应地址:
https://fhir.epic.com/interconnect-fhir-oauth/oauth2/token - 授权URL填写:
https://fhir.epic.com/interconnect-fhir-oauth/oauth2/authorize - 勾选
Authorize using browser选项,因为Epic的OAuth需要跳转浏览器完成授权流程
- 授权类型选择
核对FHIR版本和ID配置
你选择的R4版本和Unconstrained FHIR IDs一般不会直接导致invalid_client错误,但可以确认Epic沙箱的FHIR endpoint是否为R4版本(沙箱默认是R4,无需额外调整),ID配置在App创建时选对即可,无需在Postman中额外设置。
如果以上步骤都尝试后仍报错,可前往Epic开发者控制台检查你的Sandbox App状态,确保应用已激活且未被禁用。
内容的提问来源于stack exchange,提问作者Tokai

