0

对于我的一生,我无法弄清楚从服务中获取 SessionID 的位置,以便我可以在以后的调用中使用它来重新创建相同的会话。

我目前在 C# 中使用 wsdl 的 2013_1_0 版本

当参考第 78 页上的旧文档SuiteTalkWebServicesPlatformGuide_2011.1.pdf(登录期间重用会话 ID)时,他们谈到了这一点。

有什么建议么?

这是我在不使用以前的 SessionID 的情况下登录 NetSuite 的示例代码...

            // invoke the login operation
            Passport passport = new Passport();
            passport.account = _sNetSuiteAccount;
            passport.email = _sNetSuiteUserName;
            RecordRef role = new RecordRef();
            role.externalId = _sNetSuiteRole;
            passport.role = role;
            passport.password = _sNetSuitePassword;
            status = service.login(passport).status;

            // Confirm login was a success
            // Process response
            if (status.isSuccess == true)
            {
                _bIsNetSuiteAuthenticated = true;
            }

此外,我还没有找到使用 SessionID 重新创建服务的示例代码。所以那里的任何建议也将受到欢迎。

谢谢!

4

1 回答 1

0

在与 NetSuite 交谈时,我想做的事情是不可能的,并且 SessionID 存储为私有变量并由 .NET 代码处理。我目前正在寻找持久会话的替代方案,因此当代码库被多次调用时,用户将不需要每次迭代都被提示输入他们的 NetSuite 凭据。随着更多详细信息的出现,我将更新此答案。

于 2013-09-12T18:42:05.560 回答