Gatsby / Wordpress - учетные данные .env не работают - PullRequest
0 голосов
/ 08 октября 2018

Я работаю с плагином gatsby-source-wordpress

Если я жестко закодирую свои ключи / секретный ключ API в моем Gatsby.config, все работает нормально, но я хочу добавитьони как переменные .env, так что я могу использовать .gitignore для развертывания, и вот где что-то ломается.

В корне моего каталога у меня есть файл .env, который выглядит так:

CLIENT_SECRET=10987654321
CLIENT_ID=123456
USER=secret@secret.com
PASS=mypassword1

Затем я пытаюсь получить к ним доступ в gatsby.config, например:

require('dotenv').config({
path: `.env.${process.env.NODE_ENV}`
  });

    module.exports = {
      siteMetadata: {
        title: 'Gatsby Default Starter',
       },
      plugins: [
        {
          resolve: 'gatsby-source-wordpress',
           options: {
            baseUrl: 'myurl.com',
            protocol: 'http',
            hostingWPCOM: true,
            useACF: false,
            auth: {
              wpcom_app_clientSecret: `${process.env.CLIENT_SECRET}`,
              wpcom_app_clientId: `${process.env.CLIENT_ID}`,
              wpcom_user: `${process.env.USER}`,
              wpcom_pass: `${process.env.PASS}`,
           },
          },
         },
        {
         resolve: `gatsby-plugin-emotion`,
        },
        'gatsby-plugin-react-helmet',
        {
          resolve: `gatsby-plugin-manifest`,
          options: {
            name: 'gatsby-starter-default',
            short_name: 'starter',
            start_url: '/',
            background_color: '#663399',
            theme_color: '#663399',
            display: 'minimal-ui',
            icon: 'src/images/gatsby-icon.png', // This path is 
    relative to the root of the site.
        },
       },
        'gatsby-plugin-offline',
      ],
    }

, который возвращает следующие ошибки при запуске gatsby development или gatsby build

  • узлы источника и преобразования. Ответ сервера был «400 неверных запросов»

  • узлов источника и преобразования. Ответ сервера был «403 Запрещено» Внутреннее сообщение об исключении: «Пользователь не может получить доступ к этому приватномублог «.Нет маршрутов для получения.Окончание.

Итак, проблема в том, что переменные .env, кажется, не проходят должным образом, но я не вижу причины, по которой они не будут?Я что-то упустил при настройке?

1 Ответ

0 голосов
/ 08 октября 2018

Гэтсби не знает, какой плагин вы имеете в виду (см. Как использовать ), и ваш общий синтаксис неверен.plugins - это, например, массив.

module.exports = {
  plugins: [
    {
      resolve: "gatsby-source-wordpress",
      options: {
        auth: {
          wpcom_app_clientSecret: process.env.CLIENT_SECRET,
          wpcom_app_clientId: process.env.CLIENT_ID,
          wpcom_user: process.env.USER,
          wpcom_pass: process.env.PASS,
        }
      }
    }
  ]
}

Это должно работать, если вы также определите другие необходимые поля, упомянутые в README.

...