在端点可变的情况下编写OAuth2,例如:Shopify

时间:2014-05-07 11:52:56

标签: scribe

我正在构建一个应用程序,我使用Scribe满足我所有的需求。我使用我的授权和令牌URL端点创建了一个覆盖DefaultApi20的服务API类。

但是对于Shopify,授权URL依赖于另一个参数(例如:商店名称),其中授权URL需要shopname作为子域。如何为此发送参数?

我可以手动构建auth url和token oauth,但我正在寻找一种更好的方法来构建发送自定义参数。

感谢。

1 个答案:

答案 0 :(得分:0)

我们遇到过类似的情况,即API上的变量必须为不同的用户设置不同的变量。我们做了以下事情:

- 处理扩展OAuth10aServiceImpl的自定义serviceImpl(在您的情况下可能是OAuth20ServiceImpl)。

- 给它一个方法来设置变量#api class

- 服务由ServiceBuilder创建,查找适当的值并调用服务的setter方法。

- 继续使用正常的OAUth令牌流

请注意,您还需要让API知道使用自定义服务类,例如:

@Override
OAuthService createService(OAuthConfig config)
{
    return new CustomServiceImpl(this,config) 
}

希望有所帮助