如何解决使用Credentials.FromSessionAsync伪造API NullReferenceException
我正在https://learnforge.autodesk.io/#/?id=learn-autodesk-forge上进行Forge API教程,但遇到了问题。我正在使用.NET(C#)示例,并且一直进行到最后,但是当我尝试运行该应用程序时,出现了错误。当我运行它时,我会得到应有的登录页面
但是当我单击“ AUTODESK登录”时会引发错误
看来Credentials对象被返回为NULL。它为获取该对象而调用的代码如下:
1234
joint
├── 01
├── 02
└── all
我不确定该代码块中的会话凭据来自何处。
我是Forge API的新手,所以将不胜感激。
谢谢 格里
解决方法
以下是按时间顺序使用Autodesk凭据登录后发生的事情:
-
Autodesk登录页面将您重定向到Forge应用程序的回调URL (通常设置为
api/forge/callback/oauth
之类) -
在您的代码中,用于
api/forge/callback/oauth
路由的handler会调用Credentials.CreateFromCodeAsync -
Credentials.CreateFromCodeAsync方法向会话添加了“ ForgeCredentials”属性
-
api/forge/callback/oauth
路由处理程序然后将您重定向回应用程序的主页 -
主页向
api/forge/oauth/token
端点发出请求,以从会话中获取访问令牌
对于您而言,由于某些原因“ ForgeCredentials”属性不可用。可能是本应用来定义session属性的代码失败。尝试单步执行api/forge/callback/oauth
路由处理程序的代码,然后查看以下代码行是否成功执行:
HttpContext.Current.Session.Add("ForgeCredentials",JsonConvert.SerializeObject(credentials));
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。