我知道必须有一个明显的解决方案来解决这个问题,但我很想念它,所以我非常感谢有人启发我,所以我不会转动我的轮子......
我正在编写一个 ASP.Net 应用程序,它将与服务 API(特别是 Evernote)进行交互。Evernote 需要 OAuth 以确保安全,在我实际与需要获取令牌的对象交互之前。
工作流程是这样的(像其他人一样向自己解释!):
- 使用我的开发 api 密钥和密钥以及其他一些 OAuth 内容构建一个 url,将其发送到 Evernote 以请求访问令牌。
- 将 url 作为请求发送到 Evernote,并从响应中提取新的访问令牌
- 使用访问令牌构建另一个 url 以请求用户的身份验证令牌。此 url 转到用户必须与之交互才能登录的页面(如果他们尚未登录),然后授权我的应用程序访问他们的帐户。我构建的 url 的最后一个参数是一个回调 url,它将从 Evernote 的服务器中调用。
- 如果一切顺利,Evernote 将请求回调 url 并包含新的身份验证令牌作为参数。
- 一旦我的服务器收到带有嵌入令牌的回调,我就可以使用它,以便我的应用程序可以与用户在后续请求中的注释进行交互。
问题是我在本地机器上编写这个应用程序,而不是公共域下的 ISP。所以我的回调是本地主机服务器。当然,localhost 是相对的,所以 Evernote 无法解析我的回调……我无法同时接收到身份验证令牌并进行调试。
必须有解决这个问题的方法,因为这种身份验证模型不是 Evernote 独有的(从长远来看……Flickr 使用它,就像许多其他服务一样)。那么有人可以告诉我如何设置,以便我可以获得身份验证令牌并仍然能够在我的本地机器上进行调试吗?
非常感谢您的帮助!