Closed qiang999 closed 4 years ago
你可以参考试试看: 你准备2个接口: 一个获取token的接口 A 另外一个是真正执行的接口 B
然后利用callback功能 把A接口返回的东西 在传给B 接口
我没有试过。因为我的接口都是内网的。如果需要token验证的话 也是一个固定token。 动态的token 没有搞过,不过我刚才说的方案理论上应该可行
我试了一下,理论上应该可以 但我父job返回的结果是个json 请教一下,我的子job如何获取里面access_token的值 我设置为#{#parent.access_token} #{#request.access_token} #request.access_token均无法获取值 显示此对象为空 应该是没有成功拿到父job的返回值 谢谢
我看看
这个事好像挺难做的,拿 ids4 来说还好些, 可以用 ClientCredentials 方式,授权服务器设定好 scopes 和 apiresources, 任务调度系统通过 clientid 和 clientsecret 认证获取 token
不过要是采用jwt中间件认证方式的系统来说,获取token基本都需要username和password或者以旧换新,暴漏username和password给任务调度系统不安全,固定token也不可行,不安全而且基本都有过期时间。针对这种情况,倒是可以在后台系统中单独给任务调度系统开一个获取token的不需认证地址,给token加上claim,对于后台系统的任务地址都需要有这个claim认证或者后台系统的非任务地址这个claim都不能访问之类的。
感觉最简单的方式就是后台系统中的任务地址都允许匿名访问,也可能想多了。。。
嗯 我也觉得不要搞复杂了。如果你想要调度的接口 有这种认证方式的话。我还不如 搞一个桥接接口 呢
另外 你上面反馈的 parent 占位符 和预期不符的问题 我修复了。 之前是parent是返回体string 已在新版优化了 wiki也更新了
EL表达式内置变量 | 说明 |
---|---|
#resultBody | 是返回体的 string |
#result | 是返回体的 json体(根据返回体的 string转的,如果上面是非json格式的那就不能使用这个变量了) |
#StatusCode | 是Response的状态code 例如 200 是ok 404 是not found 。。。 |
#parentBody | 是上一级返回体的string |
#parent | 是上一级返回体的 json体(根据上一级返回体string转的) |
有些系统接口不是采用user password的验证形式,而是token信息进行授权。 如:一些集成了IdentityServer4的系统,需要先去请求token信息,token内包含了接口授权信息。 Hangfire.HttpJob是否能处理这类接口,谢谢!