hasura_session 不带参数的调用

hasura_session invocation without arguments

有一个函数:

CREATE OR REPLACE FUNCTION public.drops(cases_free_row cases_free, hasura_session json)
 RETURNS SETOF drops
 LANGUAGE sql
 STABLE
AS $function$
    SELECT *
    FROM drops d
    WHERE d.caseid = cases_free_row.id
    AND d.userid = (hasura_session ->> 'x-hasura-user-id') :: INT
$function$

当我尝试调用时,我需要输入参数

{
  "errors": [
    {
      "extensions": {
        "path": "$.selectionSet.cases_free.drops.args",
        "code": "not-supported"
      },
      "message": "Non default arguments cannot be omitted"
    }
  ]
}

不输入参数是否可以获取数据?

Hasura v1.2.0-beta.3

您的特定 postgres 函数需要参数,所以不需要。

您需要第一个参数 cases_free_row 但对于第二个参数 hasura_session ,这里是如何使它对您的函数可用:

  1. 在 Hasura 控制台中转到数据,在未跟踪的自定义函数下,单击跟踪。
  2. 您的自定义函数将出现在左侧面板中,点击打开
  3. 然后在 Session 参数下插入 hasura_session