Is it possible to access pgSettings
in a PostGraphile plugin, specifically makeExtendSchema
? Here is my middleware:
app.use(
postgraphile(
process.env.DATABASE_URL,
"public",
{
watchPg: true,
classicIds: true,
pgSettings: (req) => {
if (req.headers.cookie) {
const cookies = cookie.parse(req.headers.cookie);
return {
'user.id': cookies['next-auth.session-token']
}
}
return;
},
appendPlugins: [require('./add-cookie-plugin')]
}
)
);
I want a plugin that adds the userId to each mutation, since it's in a cookie and I can't send it in the graphql payload. I saw pg is available, if I wanted an SQL command. Just want to know if the setting is already available:
const { makeExtendSchemaPlugin, gql } = require("graphile-utils");
module.exports = makeExtendSchemaPlugin(build => {
const { pgSql: sql, inflection } = build;
return {
typeDefs: gql`
extend type Query {
userId: Int
}
`,
resolvers: {
Query: {
async userId() {
return // current_setting('user.id', true)
},
},
},
}
});