.NET 7.0 和 SuiteTalk 无法通信

问题描述 投票:0回答:1

我有一个使用 TBA 通过 SuiteTalk 连接到 NetSuite 实例的应用程序。已生成消费者 ID 和令牌 ID,使用了“https://webservices.netsuite.com/wsdl/v2024_1_0/netsuite.wsdl”,但是当我尝试任何 SuiteTalk 调用时,我收到“405 方法不允许”。我有一个 .Net Framework 4.8 应用程序使用相同的 ID 工作正常。任何人都能够在任何 .Net Core 版本中使其工作吗?

strURL = "https://webservices.netsuite.com/wsdl/v2024_1_0/netsuite.wsdl";

EndpointAddress myEndpoint = new EndpointAddress(strURL);
NetSuitePortTypeClient wcfClientNetSuite = new NetSuitePortTypeClient(myBindingNetSuite, myEndpoint);
getDataCenterUrlsResponse DCUrlsResp = new getDataCenterUrlsResponse();
wcfClientNetSuite.getDataCenterUrls(
                        null, 
                        null,
                        null,
                        null,
                        NetSuiteAcct,
                        out DCUrlsResult
                    );
c# wcf .net-core soap
1个回答
0
投票

我研究了相关资料,找到了问题的原因。

升级到.NET CoreUrl属性消失了。

SuiteTalk 的端点现在是特定于帐户的。几年前,每个人都打电话给 https://webservices.netsuite.com。然后,将数据中心(Na1、Na2 等)添加到某处。现在,端点看起来像这样:

https://123456.suitetalk.api.netsuite.com

123456 替换为您的帐户 ID。

该文档告诉您指向

https://webservices.netsuite.com 上的 WSDL,然后调用 getDataCenterUrls 以使用 NetSuiteService 上的 Url 属性获取实际端点集。不幸的是,NetSuitePortTypeClient不包含Url 属性。

这是

文档

© www.soinside.com 2019 - 2024. All rights reserved.