我正在从 salesforce 的数据库中查询数据,它正在查找,jsforce -l http://test.salesforce.com
然后我执行 a.register
和 a .authorize
,然后我可以使用查询语言从我的 salesforce 数据库中提取数据,并且效果很好。我的 .jsforce/config.json 看起来像
{
"connections": {
"<my_username>": {
"accessToken": "<my_accessToken>",
"instanceUrl": "<https://my.partial.instance.com>",
"client": "default"
}
},
"clients": {
"default": {
"clientId": "<myclientid>",
"clientSecret": "<longNumber>",
"redirectUri": "https://localhost:1111",
"loginUrl": "https://test.salesforce.com"
}
}
}
但是我想在 javascript 中使用 jsforce 自动执行此操作。现在我尝试了类似 jsforce 的文档。
var jsforce = require('jsforce');
var conn = new jsforce.Connection({
oauth2 : {
// you can change loginUrl to connect to sandbox or prerelease env.
loginUrl : 'https://test.salesforce.com',
clientId : '<myclientid>',
clientSecret : '<longNumber>',
redirectUri : '<https://my.partial.instance.com>'
}
});
conn.login(username, 'password'+'<clientSecret>', function(err, userInfo) {
if (err) { return console.error(err); }
// Now you can get the access token and instance URL information.
// Save them to establish connection next time.
console.log(conn.accessToken);
console.log(conn.instanceUrl);
// logged in user property
console.log("User ID: " + userInfo.id);
console.log("Org ID: " + userInfo.organizationId);
// ...
});
我也尝试过一些类似的东西
var conn = new jsforce.Connection({
oauth2 : {
clientId : '<clientId>',
clientSecret : '<clientSecret',
redirectUri : 'https://localhost:1111'
},
instanceUrl : '<https://my.partial.instance.com>',
accessToken : '<accessToken>'
});
以及来自网站的类似内容,它们都给了我 { invalid_grant: authentication failure } 我相信这意味着我的授权无效。我做错了什么我的东西是正确的,因为它在命令行界面上工作。谢谢
编辑:我做了所有诽谤的事情,比如将我的 ip 列入白名单,并让用户再次自行授权 bc 在命令行上工作。