Skip to content

Commit e1ddc89

Browse files
authored
Merge pull request #913 from nextcloud-libraries/fix/fetch-and-set-token
fix: fetch token using `@nextcloud/auth` which updates the token on context
2 parents c35a05c + 96588b9 commit e1ddc89

3 files changed

Lines changed: 438 additions & 345 deletions

File tree

lib/interceptors/csrf-token.ts

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
import type { CancelableAxiosInstance } from '../client.ts'
77
import type { InterceptorErrorHandler } from './index.ts'
88

9-
import { generateUrl } from '@nextcloud/router'
9+
import { fetchRequestToken } from '@nextcloud/auth'
1010
import { isAxiosError } from 'axios'
1111

1212
const RETRY_KEY = '_nextcloudCsrfTokenReloaded'
@@ -31,9 +31,8 @@ export function onCsrfTokenError(axios: CancelableAxiosInstance): InterceptorErr
3131
&& response?.data?.message === 'CSRF check failed') {
3232
console.warn(`Request to ${responseURL} failed because of a CSRF mismatch. Fetching a new token.`)
3333

34-
const { data: { token } } = await axios.get(generateUrl('/csrftoken'))
34+
const token = await fetchRequestToken()
3535
axios.defaults.headers.requesttoken = token
36-
3736
return axios({
3837
...config,
3938
[RETRY_KEY]: true,

0 commit comments

Comments
 (0)