2

我正在从 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 在命令行上工作。

4

0 回答 0