我正在尝试使用带有.NET的OAuth(DotNetOpenAuth)通过Web应用程序向Twitter帐户发送更新。我了解OAuth和Twitter的基本工作流程。
我很困惑,如果它在服务器Web应用程序中有用吗?我不想要任何用户交互。 但是,在应用程序启动之后,需要重新创建请求令牌以及访问令牌。这涉及用户互动。
我的案例的正确工作流程是什么? 在配置文件中存储请求令牌或访问令牌? 或者使用HTTP基本身份验证的简单方法?
由于
答案 0 :(得分:2)
如果我理解正确,您的申请将不会代表您的用户与Twitter互动,但会充当您申请的Twitter帐户。
在这种情况下,有两个主要因素需要考虑。
1)如果您使用基本身份验证,您是否希望附加到每个状态的“来自API”,否则如果您使用OAuth,您的应用程序名称将会发生。 2)您是否需要付出额外的努力来实施OAuth。
如果您决定使用OAuth,则会将您的应用消费者密钥/密钥和帐户访问令牌存储在配置中,就像存储帐户屏幕名称/密码一样。
答案 1 :(得分:1)
您的“请求令牌需要重新创建”短语表示您可能遇到问题,每次您的用户访问时您需要重新授权到Twitter,也许您正在寻找一种方法来访问用户的Twitter他不在你的网站上的帐户,如果他们的令牌不是新的重新授权你怎么能这样做。是吗?
如果是这样,用户每次访问您的网站时都不应该重新授权Twitter。该令牌应该持续很长时间,这也可以让您的网站在没有直接与您的网站交互时访问他们的Twitter帐户。问题可能是您没有实现IConsumerTokenManager
接口,而是使用默认的InMemoryTokenManager
,仅供样本使用,因为这个仅限内存的令牌每次重新启动Web应用程序时,管理器都会丢失令牌。您自己对这个简单接口的实现应该从一些持久存储(如数据库)中存储和读取令牌。