#graphql-codegen #rtk-query
Вопрос:
Попытка следовать довольно скудному учебнику на официальной странице не продвинет меня далеко.
По сути, я пытаюсь добавить определенный заголовок на основе параметров вызова api, но не знаю, как настроить конечные точки для этого.
Ответ №1:
Все, что вы return
получите от query
функции вашей конечной точки, будет передано в качестве первого аргумента вашему baseQuery
. Так что , если вы используете fetchBaseQuery
, вам нужно взглянуть на это.
Как правило, базовый запрос, созданный, fetchBaseQuery
принимает все параметры, которые fetch
принял бы обычный вызов, включая headers
поле.
Таким образом, у вас будет что-то вроде
myEndpoint: build.query({
query(args) {
return {
url: "foo",
headers: { myHeader: args.blup }
}
}
})
должно сработать.
Как правило, помимо «разреженного учебника», при прокрутке вниз есть еще около 25 страниц документации, но даже в этом случае трудно охватить все, так как RTK — запрос довольно гибкий.
Вы можете прочитать больше о fetchBaseQuery в документах здесь: https://redux-toolkit.js.org/rtk-query/api/fetchBaseQuery#using-fetchbasequery
Ответ №2:
@phry ответ не работает над моим делом. Проверка документов, это делает трюк, в моем случае, чтобы решить проблему CORS:
baseQuery: fetchBaseQuery({
baseUrl: '.....',
prepareHeaders: (headers, { getState }) => {
headers.set('Access-Control-Allow-Origin', '*')
return headers
}
}),