【发布时间】:2017-01-09 09:55:51
【问题描述】:
出现 Unauthorize-401 错误。
我正在开发 QuickBooks 集成模块。几天前在美国沙盒公司一切正常。 今天我为沙箱创建了新的单独帐户以进行测试。 对于旧帐户,一切都很完美。但是对于新创建的帐户,Unauthorize-401 问题即将到来。
我今天完成的步骤如下: 1.在developer.intuit.com/创建账号 2. 在我的应用下,为会计创建新应用。 3. 在沙盒下,添加了美国公司。 4. 从我的项目中,托管在我的本地主机上。完成 OAuth 过程以收集访问令牌和访问令牌秘密。 5. 现在,当我尝试获取客户列表或(其他直觉对象)时,出现 Unauthorize-401 错误。
我项目的整个系统在之前创建的沙盒公司上完美运行。 但是对于今天配置的公司,Unauthorize-401 Error 是公司。
多个链接我都通过了,但没有摆脱面临的问题,如下:
- Getting “Unauthorized-401” Error in .NET while accessing quickBooks data through Intuit API
- How to fix Unauthorized-401 error
- Unauthorized 401
在此感谢您让我摆脱这个问题。
代码:
收集数据服务:
private DataService GetDataService()
{
try
{
string accessToken = AppSessions.QBAccessToken,
accessTokenSecret = AppSessions.QBAccessTokenSecret
, consumerKey = AppSessions.QBConsumerKey, consumerSecret = AppSessions.QBConsumerSecret
, realmId = AppSessions.QBCompanyCode;
OAuthRequestValidator oauthValidator = new OAuthRequestValidator(accessToken, accessTokenSecret, consumerKey, consumerSecret);
var serviceType = IntuitServicesType.QBO;
var validator = new OAuthRequestValidator(accessToken, accessTokenSecret, consumerKey, consumerSecret);
var context = new ServiceContext(realmId, serviceType, validator);
context.IppConfiguration.BaseUrl.Qbo = AppSessions.IppConfigBaseURL;// "https://sandbox-quickbooks.api.intuit.com/";
return new DataService(context);
}
catch (Exception ex)
{
return null;
}
}
从 Sandbox US Company 获取客户列表:
public List<Customer> GetCustomer()
{
return service.FindAll(new NSQB.Customer(), StartPosition, MaxResult).ToList<NSQB.Customer>();
}
注意:
- 我正在使用 AppSessions 静态类来管理会话。
-
NSQB 是用于 QuickBook 的命名空间的别名,即
使用 NSQB = Intuit.Ipp.Data;
我和 Intuit Team 讨论过。Quick-book System 在维护中。
Quick-Books 团队通过电子邮件收到的回复之一:
我们今天停电了。请重试。记得改变你的基地 如果您将 prod 密钥更改为 dev 密钥以进行测试,则 url 到沙箱 带沙盒。
中断会导致 401 错误。
Maintenance 他们分享的关于他们的状态管理的链接。
问题依然存在!!
【问题讨论】:
-
发布您的代码。发布您的应用程序配置的屏幕截图。发布您正在发出的 API 请求的示例,以及您收到的 API 响应。确保如果您使用的是沙盒公司,则访问的是沙盒 URL,如果您使用的是实时公司,请确保访问的是实时 URL。
-
是的@KeithPalmerJr。当然..
-
好的,我会等到您提供我要求的所有内容并确认 URL/沙盒设置后才回答。
-
@KeithPalmerJr。 ,我已经分享了代码,这对于一家沙盒公司来说是完美的,但不适用于我今天用新帐户创建的另一家沙盒公司。 !!
-
好的,我没有足够的信息来帮助你。请提供我上面指出的其他信息。
标签: c# asp.net oauth quickbooks quickbooks-online