DotNetOpenAuth OAuth 1.0a消费者自动化

时间:2017-02-28 16:17:48

标签: oauth dotnetopenauth consumer

我对oAuth 1.0a的自动化提出质疑。我需要代表用户在oAuth提供程序中访问REST API。提供商已实施oAuth版本1.0a。

正确地借口我对oAuth的无知,这对我来说是新的领域。

我正在研究.NET MVC 5项目并按如下方式安装NuGet包:"安装包-DotNetOpenAuth.OAuth.Consumer"。这安装了以下内容: 试图收集包装的依赖关系信息' DotNetOpenAuth.OAuth.Consumer.4.3.4.13329'关于项目' 项目名称',定位' .NETFramework,Version = v4.6.1' ...已成功安装依赖项和DotNetOpenAuth使用者包。

我的目标是在外部源(非人)触发时访问REST API。简而言之,控制器由外部进程触发,并将数据发送到我的应用程序。接下来,我将需要访问提供程序的REST API以处理接收的数据。因此,没有人眼或手可用于登录或复制某种验证者。

我一直在四处寻找,了解oAuth和DNOA库。我发现我必须获得一个RequestToken才能开始。我使用以下代码来实现此目的:

InMemoryTokenManager tm = new InMemoryTokenManager("**consumerkey**", "**secret**");
var serviceProvider = GetServiceDescription();
var consumer = new DesktopConsumer(serviceProvider, tm);
string reqToken;
consumer.RequestUserAuthorization(null, null, out reqToken);

我读到了InMemoryTokenManager,ServiceProviderDescription,DesktopConsumer,这对我来说非常清楚。虽然我不太确定使用DesktopConsumer而不是WebConsumer ..

现在,我需要从提供商处获取验证码。但是如何继续下去以获得它呢? 我查看了UserAuthorizationResponse对象,该对象包含完全出于此目的的属性,但我无法弄清楚如何检索它。

使用请求令牌和验证码,我应该能够获得AuthorizedTokenResponse对象并执行REST API调用。

任何人都可以帮我解决这个问题吗?

0 个答案:

没有答案