我需要安全令牌才能连接到 Salesforce API 吗?
Do I need security token to connect to Salesforce API?
我正在尝试使用 JSForce
连接到 Salesforce SOAP API
const connection = new jsforce.Connection({
loginUrl: "https://customdomain.my.salesforce.com",
});
await connection.login(username, password);
当我 运行 出现以下错误时
Error: INVALID_LOGIN: Invalid username, password, security token; or user locked out.
at /Users/juancaicedo/code/calm/salesforce-poc/node_modules/jsforce/lib/connection.js:1552:13
at tryCallOne (/Users/juancaicedo/code/calm/salesforce-poc/node_modules/promise/lib/core.js:37:12)
at /Users/juancaicedo/code/calm/salesforce-poc/node_modules/promise/lib/core.js:123:15
at flush (/Users/juancaicedo/code/calm/salesforce-poc/node_modules/asap/raw.js:50:29)
at processTicksAndRejections (internal/process/task_queues.js:75:11)
(Use `node --trace-warnings ...` to show where the warning was created)
这是一种好的身份验证方式,还是我应该做其他事情?我在其他地方看到过安全令牌,这是首选吗?
备注
我能够使用这些凭据成功登录到 Salesforce UI ✅
我愿意使用另一个 Node.js 库,但确实需要使用 SOAP API(使用 REST API 是不够的)。
一些 Salesforce 组织也需要传递安全令牌。您可能会找到您的令牌并尝试在您的 API 调用中传递它。
https://developer.salesforce.com/docs/atlas.en-us.api.meta/api/sforce_api_concepts_security.htm
如果您在 salesforce 中使用 jsforce,在这种情况下,您可以使用以下代码片段直接获取连接对象:
var conn = new jsforce.Connection({ accessToken: '{!$Api.Session_Id}' });
如果您想从外部系统连接,您可以采用以下任一方式:
- 使用访问令牌和实例URL
- 使用用户名和密码
根据您各自的库指定密钥。
注意:如果您遵循用户名和密码流程,在这种情况下,您必须在密码末尾附加安全令牌才能成功验证.您可以通过转到您的用户销售人员设置来获取该安全令牌。
对于node JS你可以参考这个包:
https://www.npmjs.com/package/node-salesforce
我正在尝试使用 JSForce
连接到 Salesforce SOAP APIconst connection = new jsforce.Connection({
loginUrl: "https://customdomain.my.salesforce.com",
});
await connection.login(username, password);
当我 运行 出现以下错误时
Error: INVALID_LOGIN: Invalid username, password, security token; or user locked out.
at /Users/juancaicedo/code/calm/salesforce-poc/node_modules/jsforce/lib/connection.js:1552:13
at tryCallOne (/Users/juancaicedo/code/calm/salesforce-poc/node_modules/promise/lib/core.js:37:12)
at /Users/juancaicedo/code/calm/salesforce-poc/node_modules/promise/lib/core.js:123:15
at flush (/Users/juancaicedo/code/calm/salesforce-poc/node_modules/asap/raw.js:50:29)
at processTicksAndRejections (internal/process/task_queues.js:75:11)
(Use `node --trace-warnings ...` to show where the warning was created)
这是一种好的身份验证方式,还是我应该做其他事情?我在其他地方看到过安全令牌,这是首选吗?
备注
我能够使用这些凭据成功登录到 Salesforce UI ✅
我愿意使用另一个 Node.js 库,但确实需要使用 SOAP API(使用 REST API 是不够的)。
一些 Salesforce 组织也需要传递安全令牌。您可能会找到您的令牌并尝试在您的 API 调用中传递它。
https://developer.salesforce.com/docs/atlas.en-us.api.meta/api/sforce_api_concepts_security.htm
如果您在 salesforce 中使用 jsforce,在这种情况下,您可以使用以下代码片段直接获取连接对象:
var conn = new jsforce.Connection({ accessToken: '{!$Api.Session_Id}' });
如果您想从外部系统连接,您可以采用以下任一方式:
- 使用访问令牌和实例URL
- 使用用户名和密码
根据您各自的库指定密钥。
注意:如果您遵循用户名和密码流程,在这种情况下,您必须在密码末尾附加安全令牌才能成功验证.您可以通过转到您的用户销售人员设置来获取该安全令牌。
对于node JS你可以参考这个包: https://www.npmjs.com/package/node-salesforce