Hasura 节点JS客户端
配置
forrest.run({
settings: {
hasura: {
endpoint: 'http://localhost:8080',
secret: 'hasura',
auth: {
token: 'token',
jwt: {
secret: 'abc',
roles: ['r1', 'r2'],
defaultRole: ['r1'],
session: {
foo: 'bar'
}
},
fn: async () => ({
token: 'token',
ttl: 0
})
}
}
}
})
仅限 一个 认证设置随时被支持 .
授权托肯
当您提供此设置时, HasuraClient 会将其作为 Authorization: Bearer {token}。 。 。 .
授权 JWT
[待 执行]
当您提供此设置时, HasuraClient 将计算 JWT 并将其用作 Authorization: Bearer {jwt}。 。 。 .
授权逻辑
[待 执行]
提供此设置时, 您可以通过提供自定义逻辑来计算授权符 .
- 结果
token键将用作Authorization: Bearer {token}。 。 。 . - 页:1
ttl将用作缓存旗:0永远保持( 直到重启)-1在每个查询中计算1000保留1s(整数表示于 毫秒(中文(简体) )
查询
const MY_QUERY = `
query FooBar ($var: String!) {
resource (
par: $var
) {
field1
field2
}
}
`;
const myFeature = () => [{
target: '$START_FEATURE',
handler: async ({ getContext }) => {
const hasura = getContext('hasura');
const res = await hasura.query(MY_QUERY, {
var: 'foobar'
});
console.log(res);
}
}];
单曲
const myFeature = () => [{
target: '$START_FEATURE',
handler: async ({ getContext }) => {
const hasura = getContext('hasura');
const res = await hasura.sql(MY_QUERY, {
var: 'foobar'
});
console.log(res);
}
}];