我正在尝试使用雪花文档https://docs.snowflake.com/en/user-guide/nodejs-driver-use.html
中的node.js驱动程序将API连接到雪花const connection = snowflake.createConnection({
account: process.env.SNOWFLAKE_ACCOUNT,
username: process.env.SNOWFLAKE_USERNAME,
password: process.env.SNOWFLAKE_PASSWORD,
})
connection.connect((err, conn) => {
if (err) {
console.error('Unable to connect: ' + err.message);
}
else {
console.log('Successfully connected to Snowflake.');
const connection_ID = conn.getId();
return connection_ID
}
});
但是,出现此错误:
Unable to connect: Network error. Could not reach Snowflake.
不确定我缺少什么。如果有人可以在这里分享一些见解会很棒吗?预先感谢!
答案 0 :(得分:1)
我建议您仔细检查一下SNOWACCT有什么 确保其设置与示例中的示例相同 https://docs.snowflake.com/en/user-guide/nodejs-driver-use.html#required-connection-options
接下来要做的是尝试查看是否可以在主机(客户端)上安装SnowCD
您的node.js应用程序正在运行。 SnowCD应该可以帮助您确定哪些http / https资源
您无法访问,然后也许可以与网络团队中的某人一起确定
为什么不允许您访问(代理,VPC规则等)。
https://docs.snowflake.com/en/user-guide/snowcd.html
如果无法安装SnowCD,则可以尝试模拟它所做的事情,例如:
SELECT SYSTEM$WHITELIST();
或SELECT SYSTEM$WHITELIST_PRIVATELINK();
我希望这可以帮助...丰富
p.s。如果这个(或另一个)答案对您有帮助,请花一点时间“接受”对您有帮助的答案 通过单击答案旁边的复选标记,将其从“灰色”切换为“填充”。
答案 1 :(得分:0)
如果要用nodejs连接雪花,必须安装
<块引用>"snowflake-sdk"
使用 npm。下面的代码将帮助您访问雪花连接。
const snowflake = require('snowflake-sdk');
connection = snowflake.createConnection({
"account": "your account",
"username": "user name",
"password": "password",
"database": "snowflake db",
"warehouse": "snowflake warehouse",
"schema": "schema"
});connection.connect(function (err, conn) {
if (err) {
console.error('Unable to connect: ' + err.message);
} else {
console.log('Successfully connected as id: ' + connection.getId());
}
});