Добавить пользователя в Drupal8 с помощью Apollo angular GraphQL

Я хочу зарегистрировать нового пользователя в бэкенде Drupal8. Установил graphql в drupal8, поэтому он работает как сервер graphql. Установил apollo в angular5 и успешно получил список узлов и статей. Теперь я хочу зарегистрировать пользователя в drupal8, используя запрос graphql со стороны angular.

const headers = new HttpHeaders();
headers.append("Access-Control-Allow-Origin", "*");
headers.append("Access-Control-Allow-Headers", "x-requested-with");
const submitClient = gql`mutation ($input: UserUserCreateInput!) {
  createUserUser(input: $input) {
    violations {
      path
      message
    }
    errors
    entity {
      entityId
      entityBundle
      entityLabel
    }
  }
}
`;

 this.apollo.mutate({
  mutation: submitClient,
  variables: {
    "input": {
      "name": "New Client",
      "mail": "[email protected]",
      "status": "1"
    }

  }
}).subscribe(r => console.log(r), e => console.log(e), () => console.log('done'));

Это мой кусок кода.

Получение ответа

data:
createUserUser:
entity: null
errors: Array(1)
0: "You do not have the necessary permissions to create entities of this type."
length: 1
proto: Array(0)
violations: []
__typename: "EntityCrudOutput"
proto: Object
proto: Object

Это должно быть из-за некоторой аутентификации или разрешения. Пожалуйста, помогите мне разобраться в этом. Заранее спасибо.


person Priya Agarwal    schedule 11.12.2018    source источник


Ответы (1)


Я бы сказал, что вам не хватает разрешения на создание пользователя, вы можете проверить его, перейдя к admin/people/permissions и прокрутив страницу вниз, и там вы можете найти разрешение на создание пользователя, добавить это разрешение анонимному пользователю, а затем попытаться выполнить свой снова мутация. Надеюсь, это сработает.

person Milan Toncic    schedule 18.11.2019