0
JavaScriptとNodeJSの分野では非常に初心です。私はJavaとC#の両方で多くの経験を持っていますが、これは全く新しいものです。約束事を使用したGraphQL解決
POCとして、私はGraphforceでsalesforce呼び出しをラップしようとしています。 salesforceの呼び出しは非同期なので、スキーマと基礎となるクエリとの間のバインディングを定義するときに、私はGraphQLに約束を返す必要があります。
しかし、私は「Iterableが必要ですが、フィールドQuery.getAccountsのメッセージが見つかりません」というメッセージが表示されます。
conn.login('username', 'password' + 'security-token', function(err, userInfo) {
if (err) {
console.log(err);
console.log("Cannot login to Salesforce");
} else {
var root = {
getAccounts: function ({offset, limit}) {
return new Promise(function(resolve, reject) {
conn.query("SELECT Id, Name FROM Account", function(err, result) {
if (err) {
reject();
}
resolve(result);
});
});
}
}
var app = express();
app.use('/graphql', graphqlHTTP({
schema: schema,
rootValue: root,
graphiql: true,
}));
app.listen(4000);
console.log('Running a GraphQL API server at localhost:4000/graphql');
}
});
私はアポロを使用する必要があります。
は、ここに私の絶対にひどいコードですか?