quickbooks api v3 IdsQuery

本文关键字:IdsQuery v3 api quickbooks | 更新日期: 2023-09-27 18:04:48

我继承了一个应用程序,使用quickbooks api v2与php和事情工作得很好。

在过去的几个星期里,由于"和谐"迁移,我的任务是从api v2迁移到api v3。我使用。net版本的quickbooks api v3完成了此迁移,并且在我的开发环境中一切都运行良好,但是当我将更改推送到我的登台服务器时,它不起作用。誓言部分工作得很好。我被重定向到intuit网站,以确认我的授权,我的应用程序应该被赋予访问我的quickbooks信息。一切都工作得很好,直到我被重定向到我的oath_callback_url,在那里我实际上在quickbooks中对TaxCodes进行查询,以查看TaxCodes对我的特定用户可用。

我所指的代码如下:

QueryService<TaxCode> taxCodeQueryService = new QueryService<TaxCode>(getServiceContext(RestProfile.GetRestProfile()));
taxCodes = taxCodeQueryService.ExecuteIdsQuery("Select * From TaxCode").ToList<TaxCode>();
使用这段代码,我收到一个错误,上面写着:

消息:与id服务器通信时出现错误

基本上,我正在查询TaxCodes并将其发送到intuit服务器,但我没有得到任何回报(经过30秒的等待)。在我的开发环境中一切正常,但是当我部署到登台服务器时,这个问题就出现了。我已经检查了这台服务器上的各种防火墙情况,但我无法从intuit的服务器获得有效的结果。我尝试了TaxCodes的查询,以及Customer列表的一般查询。我得到了相同的结果。

在我的登台服务器上,我使用mono 3.4.0,就像我在开发环境中一样。在开发中一切都很完美,但在我的服务器上,我从intuit得到超时/无响应。

如果你对如何解决这个问题有一个解释或建议,我将不胜感激。

quickbooks api v3 IdsQuery

我在这里回答,以防其他人有这个问题。

问题与在linux上部署应用程序有关。linux上的Mono没有提供一组受信任的根证书,所以我使用Mono附带的mozroots实用程序导入它们。在使用quickbooks api服务器提供的ssl证书时,这显然是不够的。您要么需要信任正确的根证书,要么使用这里提供的修复程序之一:使用cert和mozroots