2013-01-15 65 views
0

我试图从QuickBooks任意位置连接到QuickBooks桌面,但是,我无法看到我的QuickBooks Desktop实例Joe's Test Company。我只看到我的QuickBooks Online实例。将QuickBooks Anywhere连接到QuickBooks Desktop

我相信这个问题是我的网址:

https://qbo.intuit.com/qbo1/rest/user/v2/

什么是QuickBooks的桌面基础网址是什么?

这里是我的代码:

 public void GetAccessTokenAndSecret() 
    { 
     string oauth_callback_url = HttpContext.Current.Request.RawUrl; 
     oauth_callback_url = HttpContext.Current.Request.Url.GetLeftPart(UriPartial.Authority) + oauth_callback_url; 
     string consumerKey = _qboSettings.ConsumerKey; 
     string consumerSecret = _qboSettings.ConsumerKeySecret; 
     var oauthLink = Constants.OauthEndPoints.IdFedOAuthBaseUrl; 
     IToken token = (IToken)HttpContext.Current.Session["requestToken"]; 
     IOAuthSession session = CreateSession(); 
     IToken requestToken = session.GetRequestToken(); 
     HttpContext.Current.Session["requestToken"] = requestToken; 
     string RequestToken = requestToken.Token; 
     string TokenSecret = requestToken.TokenSecret; 
     oauthLink = Constants.OauthEndPoints.AuthorizeUrl + "?oauth_token=" + RequestToken + "&oauth_callback=" + UriUtility.UrlEncode(oauth_callback_url); 
     HttpContext.Current.Response.Redirect(oauthLink); 

    } 

    /// <summary> 
    /// Creates Session 
    /// </summary> 
    /// <returns>Returns OAuth Session</returns> 
    protected IOAuthSession CreateSession() 
    { 
     OAuthConsumerContext consumerContext = new OAuthConsumerContext 
     { 
      ConsumerKey = _qboSettings.ConsumerKey, 
      ConsumerSecret = _qboSettings.ConsumerKeySecret, 
      SignatureMethod = SignatureMethod.HmacSha1 
     }; 
     return new OAuthSession(consumerContext, 
             Constants.OauthEndPoints.IdFedOAuthBaseUrl + Constants.OauthEndPoints.UrlRequestToken, 
             Constants.OauthEndPoints.IdFedOAuthBaseUrl, 
             Constants.OauthEndPoints.IdFedOAuthBaseUrl + Constants.OauthEndPoints.UrlAccessToken); 
    } 

这里是我的常量:

using System.Globalization; 

namespace HelloIntuitAnywhere.Utilities 
{ 
using System.Configuration; 
using System.Web; 

/// <summary> 
/// Contains Constants. 
/// </summary> 
internal class Constants 
{ 

    static string Url_Request_Token = "/get_request_token"; 
    static string Url_Access_Token = "/get_access_token"; 
    static string Intuit_OAuth_BaseUrl ="https://oauth.intuit.com/oauth/v1"; 
    static string Intuit_Workplace_AuthorizeUrl = "https://workplace.intuit.com/Connect/Begin"; 
    static string BlueDot_AppMenuUrl = "https://workplace.intuit.com/api/v1/Account/AppMenu"; 
    static string DisconnectUr = "https://appcenter.intuit.com/api/v1/Connection/Disconnect"; 
    static string oauth_callback_url = HttpContext.Current.Request.RawUrl.Replace("Configure", "OAuthHandler"); 
    static string menuProxy = "MenuProxy.aspx"; 
    static string grantUrl = "OauthGrant.aspx"; 
    static string qbo_base_url = "https://qbo.intuit.com/qbo1/rest/user/v2/"; 
    static string openid_identifier = "https://openid.intuit.com/Identity-YourAppName"; 


    /// <summary> 
    /// OAuth EndPoints. 
    /// </summary> 
    internal class OauthEndPoints 
    { 
     /// <summary> 
     /// Url Request Token 
     /// </summary> 
     internal static string UrlRequestToken = Url_Request_Token != null ? 
      Url_Request_Token.ToString(CultureInfo.InvariantCulture) : "/get_request_token"; 

     /// <summary> 
     /// Url Access Token 
     /// </summary> 
     internal static string UrlAccessToken = Url_Access_Token != null ? 
      Url_Access_Token.ToString(CultureInfo.InvariantCulture) : "/get_access_token"; 

     /// <summary> 
     /// Federation base url. 
     /// </summary> 
     internal static string IdFedOAuthBaseUrl = Intuit_OAuth_BaseUrl != null ? 
      Intuit_OAuth_BaseUrl.ToString(CultureInfo.InvariantCulture) : "https://oauth.intuit.com/oauth/v1"; 

     /// <summary> 
     /// Authorize url. 
     /// </summary> 
     internal static string AuthorizeUrl = Intuit_Workplace_AuthorizeUrl != null ? 
      Intuit_Workplace_AuthorizeUrl.ToString(CultureInfo.InvariantCulture) : "https://workplace.intuit.com/Connect/Begin"; 
    } 

    /// <summary> 
    /// Intuit Anywhere Endpoints. 
    /// </summary> 
    internal class IaEndPoints 
    { 
     /// <summary> 
     /// BlueDot Menu Url. 
     /// </summary> 
     internal static string BlueDotAppMenuUrl = BlueDot_AppMenuUrl != null ? 
      BlueDot_AppMenuUrl.ToString(CultureInfo.InvariantCulture) : "https://workplace.intuit.com/api/v1/Account/AppMenu"; 

     /// <summary> 
     /// Disconnect url. 
     /// </summary> 
     internal static string DisconnectUrl = DisconnectUrl != null ? 
      DisconnectUrl.ToString(CultureInfo.InvariantCulture) : "https://appcenter.intuit.com/api/v1/Connection/Disconnect"; 
    } 
} 
} 

回答

1

什么是QuickBooks的桌面基础网址是什么?

documentation,网址为IDS QuickBooks的桌面遵循以下格式:

https://services.intuit.com/sb/<objectName>/v2/<realmID> 

但是,您遇到的问题:我只看到我的QuickBooks的在线例子

确实没有与基本URL相关的声音。这听起来更像是您没有设置Sync Manager,或者您的应用设置没有勾选QuickBooks桌面选项,以允许桌面版QuickBooks连接到您的应用。

+0

Joseph,请确保在您的应用程序的设置中将QuickBooks Desktop作为您的应用程序支持的数据源进行检查。 –

+0

现在出现一个对话框询问QBO或QBD。之前我没有注意到。 –