Я настраиваю сервер lacinia-pedestal graphql, используя Clojure, и пытаюсь получить к нему доступ с помощью клиентского кода javascript, используя apollo.Тем не менее, я не могу получить доступ к конечной точке / graphql на локальном хосте, потому что я пытаюсь получить к ней доступ из источника локального хоста (localhost: 3000), который не разрешен COR.Как настроить COR с помощью lacinia-pedestal?
Вот код на стороне сервера (настройка с использованием учебника lacinia https://lacinia.readthedocs.io/en/latest/tutorial/component.html)
(ns project.server
(:require [com.stuartsierra.component :as component]
[com.walmartlabs.lacinia.pedestal :as lp]
[io.pedestal.http :as http]))
(defrecord Server [schema-provider server]
component/Lifecycle
(start [this]
(assoc this :server (-> schema-provider
:schema
(lp/service-map {:graphiql true})
http/create-server
http/start)))
(stop [this]
(http/stop server)
(assoc this :server nil)))
(defn new-server
[]
{:server (-> {}
map->Server
(component/using [:schema-provider]))})
Код на стороне клиента очень прост (используя Apollo):
const client = new ApolloClient({
uri: "http://localhost:8888/graphql"
});