Skip to content

nn1k4/vite-plugin-cross-origin-isolation

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 

Repository files navigation

vite-plugin-cross-origin-isolation

A vite plugin for enabling cross-origin-isolation for dev server and preview.

Why

Cross origin isolation is required for SharedArrayBuffer.

Using this plugin, in local dev server, functions that rely on SAB can be enabled and tested.

Usage

First install it in your vite project:

npm i -D @laimi7/vite-plugin-cross-origin-isolation

Then, in vite.config.js:

import crossOriginIsolation from '@laimi7/vite-plugin-cross-origin-isolation'

export default {
    plugins: [
      // other plugins...
      crossOriginIsolation()
    ]
}

If this doesn't work, try this instead:

import { defineConfig } from "vite";

export default defineConfig({
  plugins: [
     {
        name: "configure-response-headers",

        configureServer: (server) => {
          server.middlewares.use((_req, res, next) => {
          res.setHeader("Cross-Origin-Embedder-Policy", "require-corp");
          res.setHeader("Cross-Origin-Opener-Policy", "same-origin");
          next();
          });
        },
        configurePreviewServer(server) {
          server.middlewares.use((_req, res, next) => {
          res.setHeader("Cross-Origin-Opener-Policy", "same-origin");
          res.setHeader("Cross-Origin-Embedder-Policy", "require-corp");
          next();
          });
          }
      },
  ],
});

Copy from: vitejs/vite#3909 (comment)

License

The MIT License (MIT)

Copyright (c) 2021 - present Qichao Lan (chaosprint)

About

A vite plugin for enabling cross-origin-isolation for dev server and preview.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published