Authentication Acumatica API升级到6.1后未经授权登录
我们最近刚刚将Acumatica实例升级到版本6.10.0680。我在上一个实例(V 5.30.2489)上使用基于合同的API登录API并使用以下代码创建销售订单:Authentication Acumatica API升级到6.1后未经授权登录,authentication,acumatica,Authentication,Acumatica,我们最近刚刚将Acumatica实例升级到版本6.10.0680。我在上一个实例(V 5.30.2489)上使用基于合同的API登录API并使用以下代码创建销售订单: using (DefaultSoapClient client = new DefaultSoapClient(binding, address)) { try { //Login to Acumatica API await client.LoginAsync(_acumaticaUid,
using (DefaultSoapClient client = new DefaultSoapClient(binding, address))
{
try {
//Login to Acumatica API
await client.LoginAsync(_acumaticaUid, _acumaticaPwd, _acumaticaCompany, null, null);
//Create a sales order with the specified values
SalesOrder newOrder = (SalesOrder)await client.PutAsync(orderToBeCreated);
client.Logout();
return newOrder;
}
catch (Exception e)
{
//order addition to Acumatica failed, update the order status in Woo Commerce
client.Logout();
Console.WriteLine("Acumatica could not add specified entity: " + e);
return null;
}
}
客户端地址参数的URL:“
上面的代码在我使用的上一个版本中工作得非常完美,但是现在在v6.1中使用这段代码时,我在client.LoginAsync()方法中得到了一个未经授权的401响应。以下是错误响应:
HTTP请求未经客户端身份验证方案授权
“匿名”。从服务器接收的身份验证标头为
“基本”
我认为升级版本是为了向后兼容而构建的,所以这不应该仍然有效吗?为了在v6.1上进行此工作,我是否需要更改某些内容
从:
您可以在Acumatica的未来版本中使用相同的系统端点
企业资源计划例如,如果使用版本为5.30.001的系统端点
和合同版本1访问Acumatica ERP 5.3,您可以使用
访问Acumatica ERP未来版本的相同端点
最后,我们将升级到现在可用的REST API,但这需要同时工作。您的代码很好,WebService API和.Net中的引用很易变 遇到连接问题时,有时需要从头开始更新或重建引用: 在同一菜单中,您可以在“配置服务引用”中获取WSDL地址: 确保可以从浏览器访问WSDL URL:
您是否已从HTTP切换到HTTPS?这看起来像是“绑定”错误。您也可以尝试重新生成服务引用。我已经能够在v5.3上将此服务引用与http和https一起使用。我尝试使用v6.1 Acumatica实例的url重新生成服务引用,但仍然收到相同的401错误。当使用浏览器导航到时,您会看到什么:我得到一个404未找到(在用url中的实际值替换后)。我只是在尝试更新服务引用后恢复了所有更改,并将其恢复到原来的方式,现在它可以工作了!我不确定问题出在哪里。WebService API和.Net中的引用是易变的,当遇到连接问题时,有时需要从头开始重建引用。