自动登录到我们自己的OAuth应用程序

本文关键字:自己的 OAuth 应用程序 我们自己 我们 登录 | 更新日期: 2023-09-27 17:49:41

我们有一些带有OAuth的web服务。

我需要对它们运行一些测试,最好是在不使用浏览器的自动化环境中。

登录时出现问题。

不使用浏览器,使用DotNetOpenAuth和设置HttpContext。当前手动,我似乎能够做所有事情并获得请求令牌和验证器(我使用测试用户名和密码)。

我认为下一阶段是获得授权令牌。不幸的是,无论我如何构造请求,我都无法使它工作。

目前,使用WebConsumer (DotNetOpenAuth库)并调用consumer.ProcessUserAuthorization()会导致错误:

DotNetOpenAuth.OAuth.Messages。AuthorizedTokenRequest消息:oauth_verifier

可能整个方法都是错误的,所以任何帮助/建议都是有用的。

谢谢。

自动登录到我们自己的OAuth应用程序

我建议您通过使用您的web服务令牌管理器始终包含的测试访问令牌和访问令牌秘密来跳过整个OAuth握手和授权步骤。然后将您的测试连接起来,使其令牌管理器中也包含该令牌对,并在授权出站呼叫时始终使用该访问令牌。

最后,这是一个cookie没有被正确存储的问题。

我在登录页面(用户输入他们的用户名和密码)和授权页面(用户说可以与第三方共享详细信息)之间丢失了cookie。第二个页面做了一个额外的检查,看看用户是否是他们所说的那个人(读取登录页面应该写的cookie值)。

这不是一个真正的OAuth问题,只是我不理解授权页面(无论如何已经被删除- c'est la vie)。

然后我遇到了cookie的域名问题(当域名以' . '开头时)。这篇文章帮助了我:

CookieContainer错误?

我最后把cookie从一个域复制到另一个域。