AWS AppSync API с пользовательским атрибутом Cognito не работает

Я часами пытаюсь решить проблему ниже. Любая помощь приветствуется. Я использую AWS Appsync GraphQl и простую схему

type Users {
    familyId: String!
    userId: String!
    email: String
    picture: String
    givenName: String
    familyName: String
    ...
}

type Query {
    getFamily: [Users]
}

и мой распознаватель, который использует пользовательские атрибуты Cognito FamilyID

{
    "version" : "2017-02-28",
    "operation" : "Query",
    "index" : "familyId-index",
    "query" : {
        "expression": "familyId = :Id",
        "expressionValues" : {
            ":Id" : {
                "S" : "${ctx.identity.claims.get("custom:familyId")}"
            }
        }
    },
}

Это нормально работает в AWS appsync, построителе запросов, также работает в режиме native native с использованием клиента appollo <Query/>,

Это НЕ работает с помощью AWS appsync API API.graphql(graphqlOperation(getFamilyQuery)) возвращаемая ошибка

"message": "Невозможно проанализировать документ JSON: 'Неожиданный символ ('c' (код 99)): ожидалось, что запятая разделяет записи объекта [15:07:49] в [Source: (String)\"

Отметьте, если я заменю в своем резольвере "S" : "${ctx.identity.claims.get("custom:familyId")}"с "S" : "${ctx.identity.sub}" или любое исправление только для проверки вызова API работает нормально... так что мой конфиг клиента API выглядит нормально (или я что-то пропустил?)

Кажется, пользовательский атрибут недоступен при использовании метода API aws-Amplify для запроса моей схемы graphql....

Кто-нибудь сталкивался с такой же проблемой? Любой ключ к решению этой проблемы?

0 ответов

Другие вопросы по тегам