我一直在针对 Delphi EXE(win32 桌面应用程序)进行编码,以访问 twitter 并执行某些功能。它曾经使用具有 api 限制的基本身份验证。我知道我必须将其转换为 OAuth。我一直在阅读文档,试图确定最佳方法。我知道最好的方法是使用带有回调 url 的 Web 浏览器。我还知道 Twitter 包含基于 Pin 图 (oob) 的身份验证方法。我认为这是使用该应用程序的途径,但我想确定一下,因为这不是无缝的。它要求用户进入应用程序外部并获取 PIN 码。它也不那么安全,因为返回的访问 token 永远不会过期。
我正在使用 Indy v10 组件执行 GET/POST 操作,因此我想知道是否有办法使用它们来执行此操作,并且能够执行回调而不使用 Pin 身份验证方法。
有人可以帮助我吗?
此外,我一直在尝试让 Chuck Beasley 的 Twitter 类在 Delphi 7 和 Indy v10 中工作,但遇到了麻烦。 IdObjs 和 Idsys 不再存在。有人让这门课适合我的场景吗? 谢谢, 大卫
最佳答案
OAuth 是用于 Web 应用程序的标准,其文本中大量出现“代理”一词,意思是浏览器。恕我直言,最好的解决方案是,如果可能的话,实际上有一个回调 URL,这意味着您拥有自己的站点,它提供支持您的应用程序功能的服务。已经有一些服务可以让第三方实现这一点,例如 JanRain 。如果这些选项不可行(意味着您无法为回调 URL 提供真正的 WWW 站点),那么您唯一的选择确实是带外身份验证,oob。甚至不要考虑让 OAuth 身份验证回调应用程序监听某个端口,这完全不可靠,因为 1) 绝大多数应用程序将位于某种 NAT 设备(路由器、出站代理)后面,这使得它们无法从OAuth 提供商和 2) 操作系统防火墙将阻止您的来电。
关于delphi - Twitter OAUTH 和 Win32 EXE 桌面应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3992704/