gpt4 book ai didi

asp.net - 如何调试访问 OAuth 安全 API 的 ASP.Net 应用程序?

转载 作者:行者123 更新时间:2023-12-01 04:22:44 25 4
gpt4 key购买 nike

我知道必须有一个明显的解决方案来解决这个问题,但我很想念它,所以我非常感谢有人启发我,所以我不会转动我的轮子......

我正在编写一个 ASP.Net 应用程序,它将与服务 API(特别是 Evernote)进行交互。 Evernote 需要 OAuth 以确保安全,在我实际与需要获取 token 的对象交互之前。

工作流程是这样的(像其他人一样向自己解释!):

  • 使用我的开发 api key 和 key 以及其他一些 OAuth 内容构建一个 url,将其发送到 Evernote 以请求访问 token 。
  • 将 url 作为请求发送到 Evernote,并从响应中提取新的访问 token
  • 使用访问 token 构建另一个 url 以请求用户的身份验证 token 。此 url 转到用户必须与之交互才能登录的页面(如果他们尚未登录),然后授权我的应用程序访问他们的帐户。我构建的 url 的最后一个参数是一个回调 url,它将从 Evernote 的服务器中调用。
  • 如果一切顺利,Evernote 将请求回调 url 并包含新的身份验证 token 作为参数。
  • 一旦我的服务器收到带有嵌入 token 的回调,我就可以使用它,以便我的应用程序可以与用户在后续请求中的注释进行交互。

  • 问题是我在本地机器上编写这个应用程序,而不是公共(public)域下的 ISP。所以我的回调是本地主机服务器。当然,localhost 是相对的,所以 Evernote 无法解析我的回调……我无法同时接收到身份验证 token 并进行调试。

    必须有解决这个问题的方法,因为这种身份验证模型不是 Evernote 独有的(从长远来看……Flickr 使用它,就像许多其他服务一样)。那么有人可以告诉我如何设置,以便我可以获得身份验证 token 并仍然能够在我的本地机器上进行调试吗?

    非常感谢您的帮助!

    最佳答案

    OAuth 很难实现。这可能不是您要寻找的答案,但这就是我设法完成工作的方式:

  • 在我的本地开发机器上写一些代码。
  • 运行一个执行 msbuild 部署脚本并将应用程序部署到测试服务器的 bat 文件(或者 Hook VS 中的构建后事件)。
  • 在测试服务器上运行应用程序。在获取请求 token 并请求授权后,它会重定向到 Evernote 网站。
  • 成功授权后,Evernote 网站重定向回我的测试服务器,并且授权的请求 token 被交换为访问 token 。
  • 我不是调试(我在测试服务器上没有 VS),而是检查应用程序的日志(我使用的日志记录就像写入文本文件一样简单)。
  • 冲洗并重复

  • 出于测试目的,我注册了一个临时公共(public)子域(例如 testing.oauth.mydomain.com),以便 Evernote 能够重定向到该 URL。

    关于asp.net - 如何调试访问 OAuth 安全 API 的 ASP.Net 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/346868/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com