2020-02-08 23:26:57 +01:00
|
|
|
import { session } from 'electron';
|
|
|
|
import { ISession } from './i-session';
|
2020-03-02 23:15:44 +01:00
|
|
|
import { injectable } from 'inversify';
|
2020-02-08 23:26:57 +01:00
|
|
|
import OnHeadersReceivedDetails = Electron.OnHeadersReceivedDetails;
|
|
|
|
|
|
|
|
@injectable()
|
|
|
|
export class Session implements ISession {
|
|
|
|
public setHeaders(): void {
|
|
|
|
// these headers only work on web requests, file:// protocol is handled via meta tags in the html
|
|
|
|
session.defaultSession.webRequest.onHeadersReceived(
|
|
|
|
(details: OnHeadersReceivedDetails, callback: (response: {}) => void) => {
|
|
|
|
callback({
|
|
|
|
responseHeaders: {
|
|
|
|
...details.responseHeaders,
|
|
|
|
'Content-Security-Policy': ["default-src 'none'"],
|
|
|
|
},
|
|
|
|
});
|
|
|
|
}
|
|
|
|
);
|
|
|
|
}
|
|
|
|
}
|