fix(tracker): fix for setSessionTokenHeader
This commit is contained in:
parent
0d9c225c1d
commit
1cf1c3688a
4 changed files with 25 additions and 2 deletions
|
|
@ -1,3 +1,12 @@
|
|||
# 9.0.2
|
||||
|
||||
- fix "setSessionTokenHeader" method
|
||||
|
||||
# 9.0.1
|
||||
|
||||
- Warning about SSR mode
|
||||
- Prevent crashes due to network proxy in SSR
|
||||
|
||||
# 9.0.0
|
||||
|
||||
- Option to disable string dictionary `{disableStringDict: true}` in Tracker constructor
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"name": "@openreplay/tracker",
|
||||
"description": "The OpenReplay tracker main package",
|
||||
"version": "9.0.1",
|
||||
"version": "9.0.2",
|
||||
"keywords": [
|
||||
"logging",
|
||||
"replay"
|
||||
|
|
|
|||
|
|
@ -81,8 +81,10 @@ export class ResponseProxyHandler<T extends Response> implements ProxyHandler<T>
|
|||
// @ts-ignore
|
||||
readerReceivedValue = new Uint8Array(result.value)
|
||||
} else {
|
||||
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
||||
const newValue = new Uint8Array(readerReceivedValue.length + result.value!.length)
|
||||
newValue.set(readerReceivedValue)
|
||||
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
||||
newValue.set(result.value!, readerReceivedValue.length)
|
||||
readerReceivedValue = newValue
|
||||
}
|
||||
|
|
@ -125,7 +127,7 @@ export class FetchProxyHandler<T extends typeof fetch> implements ProxyHandler<T
|
|||
private readonly isServiceUrl: (url: string) => boolean,
|
||||
) {}
|
||||
|
||||
public apply(target: T, thisArg: typeof window, argsList: [RequestInfo | URL, RequestInit]) {
|
||||
public apply(target: T, _: typeof window, argsList: [RequestInfo | URL, RequestInit]) {
|
||||
const input = argsList[0]
|
||||
const init = argsList[1]
|
||||
|
||||
|
|
@ -141,6 +143,15 @@ export class FetchProxyHandler<T extends typeof fetch> implements ProxyHandler<T
|
|||
const item = new NetworkMessage(this.ignoredHeaders, this.setSessionTokenHeader, this.sanitize)
|
||||
this.beforeFetch(item, input as RequestInfo, init)
|
||||
|
||||
this.setSessionTokenHeader((name, value) => {
|
||||
argsList[1] = {
|
||||
...argsList[1],
|
||||
headers: {
|
||||
...argsList[1]?.headers,
|
||||
[name]: value,
|
||||
},
|
||||
}
|
||||
})
|
||||
return (<ReturnType<T>>target.apply(window, argsList))
|
||||
.then(this.afterFetch(item))
|
||||
.catch((e) => {
|
||||
|
|
|
|||
|
|
@ -42,6 +42,9 @@ export class XHRProxyHandler<T extends XMLHttpRequest> implements ProxyHandler<T
|
|||
case 'open':
|
||||
return this.getOpen(target)
|
||||
case 'send':
|
||||
this.setSessionTokenHeader((name: string, value: string) => {
|
||||
target.setRequestHeader(name, value)
|
||||
})
|
||||
return this.getSend(target)
|
||||
case 'setRequestHeader':
|
||||
return this.getSetRequestHeader(target)
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue