0

我有一个小问题。我正在使用 NetSuite 电子商务,我需要检查一些东西,当用户登录时,我的网站会运行一个脚本,但有时即使仍然获得 NetSuite 属性,它也会要求登录。像这样的东西:

var loginEmail = "<%=getCurrentAttribute('customer','email')%>";
if(loginEmail==null || loginEmail=="") {
   $("#cart").hide();
}
else {
   $("#cart").show();
}

您知道我应该调用/使用的特定 NetSuite 属性或标签吗?

4

4 回答 4

0

使用此代码:

<%
var shoppingSession = nlapiGetWebContainer().getShoppingSession();

if (!shoppingSession.isLoggedIn()) 
    $("#cart").hide();
else
    $("#cart").show();
%>
于 2013-08-02T02:00:19.287 回答
0

用户会话在一段时间不活动后会超时,并且使用 cookie 跟踪用户会话。

尝试使用不同的浏览器进行测试——例如,在 FireFox 中运行 NetSuite 并在 Chrome 或 Safari 中测试电子商务功能。

于 2013-07-07T22:16:01.817 回答
0

代替

<%=getCurrentAttribute('customer','email')%>

尝试使用

<%=getCurrentAttribute('customer','entityid')%>
于 2013-09-04T13:23:33.807 回答
0

试试nlapiGetLogin()。从 NetSuite 帮助:

nlapiGetLogin

返回当前登录用户的 NetSuite 登录凭据。

用户事件、portlet、Suitelet、RESTlet 和 SSP 脚本支持此 API。有关与此 API 关联的单位成本的信息,请参阅 API 治理。

退货 nlobjLogin

2012.2 版起

例子

此示例显示如何获取当前登录用户的凭据。

//Get credentials of currently logged-in user
var login = nlapiGetLogin();

它没有说,但我的想法是,null如果没有用户登录,这将返回。

于 2013-07-08T17:31:05.797 回答