我需要从 SFDC 登录访问 Netsuite 中的销售订单。我已经有了获取销售订单号的代码。我的问题是我需要生成 URL 以从销售人员重定向到 NetSuite 中的销售订单。这需要获取 url ' https://system.na1.netsuite.com ' 通过 suitescript 。
url 中的“na1”代表北美,这会根据国家/地区而变化。
因此,通过将电子邮件 ID、密码传递给实际登录地址 ' https://system.netsuite.com/pages/customerlogin.jsp ' 我需要获得授权的 url。
nlapiResolveURL(type, identifier, id, displayMode)
为 url 的后面部分即时创建 URL。
有什么想法或解决方案吗?
最佳答案
扩展 @egrubaugh360 发布的答案,以获取基本域,这是一个示例。
var credentials = {
email: "netsuiteEmail@example.com",
account: "1234567",
role: "25",
password: "secretPassword",
};
//Setting up URL
var url = "https://rest.netsuite.com/rest/roles";
//Setting up Headers
var headers = {"User-Agent-x": "SuiteScript-Call",
"Authorization": "NLAuth nlauth_account=" + credentials.account + ", nlauth_email=" + credentials.email +
", nlauth_signature= " + credentials.password + ", nlauth_role=" + credentials.role,
"Content-Type": "application/json"};
var response = nlapiRequestURL(url, null, headers);
var results = JSON.parse(response.body);
var domain = results[0].dataCenterURLs.systemDomain;
此外,systemDomain
、restDomain
和 webservicesDomain
也可用。这是从 NetSuite 调用 RESTlet 的示例,但它可以用任何语言完成。
关于javascript - 获取NetSuite的授权url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29818717/