2013-04-06 57 views
0

我试图通过要求AppCenter WF 1.0。我的日志是在这里:Intuit Anywhere - 无效令牌例外

http://pastebin.com/jqqLWury

我发现我的OauthResponse页面被访问了两次:

CCC:信息2013年4月8日下午2点40分22秒OauthResponse已被访问的4/8/2013 2:40:22 PM CCC:信息2013/4/8 14:40:26 OauthResponse已被访问2013年4月8日下午2点40分26秒

我上面发布的日志也似乎打两次我的网页。我想尝试登录https://appcenter.intuit.com/TryBuy/IA/MYID。我收到一个要求连接到我的应用程序的页面。当我连接并点击授权时,我被发送到myapp.com/openid并重定向到myapp.com/home/index。我收到一个访问令牌,一个访问令牌密钥和一个领域。当我尝试使用这些凭据进行身份验证时,它会失败。

我注意到该应用程序从未添加到我的公司应用程序列表。

我正在使用Intuit Azure SDK。在我的开发领域,这些设置是否正确?

程序URL:myapp.com/openid

断开登陆网址:myapp.com/disconnect

管理用户网址:myapp.com/OauthResponse

的OpenID网址:https://www.myapp.com/openid

主机名称域名:myapp.com

我正在使用我的开发消费者密钥和我的开发消费者密钥。我怎么会得到不好的凭据?

这是我的错误:

Intuit.Ipp.E​​xception.InvalidTokenException:未经授权 在Intuit.Ipp.E​​xception.IdsExceptionManager.HandleException(IdsException idsException) 在Intuit.Ipp.Core.ServiceContext.GetQBOPartitionedURL(字符串qboServiceEndpoint) 在Intuit.Ipp.Core.ServiceContext.GetBaseURL() 在Intuit.Ipp.Core.ServiceContext..ctor(IRequestValidator requestValidator,字符串

这里是我的代码:

string Authenticate() 
    { 
     string accessToken = HttpContext.Current.Session["accessToken"].ToString(); 
     string accessTokenSecret = HttpContext.Current.Session["accessTokenSecret"].ToString(); 
     string companyID = HttpContext.Current.Session["realm"].ToString(); 
     // now auth to IA 
     OAuthRequestValidator oauthValidator = new OAuthRequestValidator(accessToken, accessTokenSecret, ConfigurationManager.AppSettings["consumerKey"].ToString(), ConfigurationManager.AppSettings["consumerSecret"].ToString()); 
     ServiceContext context = new ServiceContext(oauthValidator, accessToken, companyID, IntuitServicesType.QBO); 
     dataServices = new DataServices(context); 
     return "OK"; 
    } 

如果我通过我的网站登录而不使用该URL,一切正常。

+0

你能打开日志记录和获取越来越错误 – 2013-04-07 23:13:01

+0

OK请求和响应,我加了日志:HTTP:/ /pastebin.com/jqqLWury – 2013-04-08 13:21:18

+0

我没有看到请求或响应。它发送的XML请求,包括我需要看到的标题。 – 2013-04-08 14:30:23

回答