Площадка GraphQL без CDN в Apollo Server 2

Я перехожу с Apollo Server Hapi v1 на Apollo Server Hapi v2. В нашей производственной среде нет доступа к Интернету, поэтому мы не смогли разместить встроенный клиент Graphiql, и вместо этого нам пришлось создать собственный пользовательский интерфейс Graphiql. Я могу повторно использовать код Graphiql, который был разработан для v1, но предпочел бы использовать Apollo Server, встроенный в Graphql Playground.

Как мы можем использовать новую площадку Graphql Playground, не требуя использования файлов CDN index.css и middleware.js?

Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Что такое Apollo Client и зачем он нужен?
Что такое Apollo Client и зачем он нужен?
Apollo Client - это полнофункциональный клиент GraphQL для JavaScript-приложений, который упрощает получение, управление и обновление данных в...
3
0
617
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Сервер Apollo 2 использует под капотом График-площадка-промежуточное ПО-экспресс, вы можете передать ему некоторые параметры, но, к сожалению, нет доступных параметров, связанных с удобством использования cdn. но есть и другие решения, которые вы можете сделать:

  1. Быстро и просто
    Выяснил, что при использовании электронного выпуска graphql-plays он не выходит в интернет и все работает локально.

  2. Взломать
    вы можете настроить в своей закрытой сети свой собственный "локальный cdn", который будет обслуживать необходимые файлы в конкретном домене, который он пытается найти ...

  3. Лучшее, но самое сложное
    Возьмите и разветвите graphql-Playground и выясните, как не зависеть на компакт-диске. Затем создайте запрос на перенос, который позволяет промежуточному программному обеспечению быть cdn независимый

В итоге я пошел на Quick and Hack, взял сгенерированный им HTML, взял файлы JavaScript из CDN и обслужил их локально. Я ненавижу этот ответ и могу попробовать электронную версию. Пока я просматривал код для опций, мне показалось, что разветвление было бы не так уж плохо, поскольку это могло быть просто обновление переданных опций. Посмотрим, получится ли у меня больше времени, чтобы поработать над этим.

tlbignerd 06.07.2018 01:44

Есть 2 PR связанных, но все еще нет решения, почти год :-( github.com/prisma/graphql-playground/issues/302github.com/apollographql/apollo-server/issues/1421

Angelos Pikoulas 15.10.2018 21:26

В этом комментарии описывается недавний обходной путь: github.com/apollographql/apollo-server/issues/…

Andi 27.05.2019 21:08

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