我正在构建一个应用程序,我使用Scribe满足我所有的需求。我使用我的授权和令牌URL端点创建了一个覆盖DefaultApi20的服务API类。
但是对于Shopify,授权URL依赖于另一个参数(例如:商店名称),其中授权URL需要shopname作为子域。如何为此发送参数?
我可以手动构建auth url和token oauth,但我正在寻找一种更好的方法来构建发送自定义参数。
感谢。
答案 0 :(得分:0)
我们遇到过类似的情况,即API上的变量必须为不同的用户设置不同的变量。我们做了以下事情:
- 处理扩展OAuth10aServiceImpl的自定义serviceImpl(在您的情况下可能是OAuth20ServiceImpl)。
- 给它一个方法来设置变量#api class
- 服务由ServiceBuilder创建,查找适当的值并调用服务的setter方法。
- 继续使用正常的OAUth令牌流
请注意,您还需要让API知道使用自定义服务类,例如:
@Override
OAuthService createService(OAuthConfig config)
{
return new CustomServiceImpl(this,config)
}
希望有所帮助