Mi reaccionar webApp da este error en la consola del navegador
Refused to load the font 'data:font/woff;base64,d09........' because it`
`violates the following Content Security Policy directive: "default-src` `'self'". Note that 'font-src' was not explicitly set, so 'default-src' is used as a fallback.
También:
Refused to connect to 'ws://localhost:3000/sockjs-node/782/oawzy1fx/websocket' because it violates the following Content Security Policy directive: "default-src 'self'". Note that 'connect-src' was not explicitly set, so 'default-src' is used as a fallback.
Captura de pantalla de la consola del navegador
index.html Tenga este meta:
<meta http-equiv="Content-Security-Policy" content="img-src 'self' data:; default-src 'self' http://121.0.0:3000/">
WebPack.cofig.js
var debug = process.env.NODE_ENV !== "production";
var webpack = require('webpack');
var path = require('path');
module.exports = {
context: path.join(__dirname, "./src"),
devtool: debug ? "inline-sourcemap" : true,
entry: "../src/index.js",
module: {
rules: [
{
test: /\.(jpe?g|png|gif|svg|woff|woff2|eot|ttf)$/i, // a regular expression that catches .js files
exclude: /node_modules/,
loader: 'url-loader',
},
{
test: /\.(js|.jsx)$/,
exclude: /(node_modules|bower_components)/,
loader: 'babel-loader',
query: {
presets: ['react','es2016', 'stage-0',],
plugins: ['react-html-attrs', 'transform-decorators-legacy', 'transform-class-properties'],
}
},
{
test: /\.css$/,
use: [
"style-loader",
{
loader: "css-loader",
}
]
}
]
},
resolve: {
modules: [
path.join(__dirname, "src"),
"node_modules",
]
},
output: {
path: __dirname + "/public/",
// publicPath: "/public/",
filename: "build.js"
},
plugins: debug ? [] : [
new webpack.optimize.DedupePlugin(),
new webpack.optimize.OccurrenceOrderPlugin(),
new webpack.optimize.UglifyJsPlugin({ mangle: false, sourcemap: false }),
],
devServer: {
port: 3000, // most common port
contentBase: './public',
inline: true,
historyApiFallback: true,
}
};
javascript
reactjs
webpack
Estudiante de JavaScript
fuente
fuente
Respuestas:
Para mí fue por la extensión de Chrome 'Grammarly'. Después de deshabilitar eso, no recibí el error.
fuente
Para corregir este error específico, CSP debe incluir esto:
Entonces, index.html meta debería leer:
fuente
http://121.0.0:3000/
mientras se usa 'self' ya?Por lo que vale, tuve un problema similar, asumiendo que está relacionado con una actualización de Chrome.
Tuve que agregar font-src y luego especificar la URL porque estaba usando una CDN
fuente
data: fonts.gstatic.com
Por experiencia personal, siempre es el mejor y el primer paso ejecutar su sitio en Incognito (Chrome), Navegación privada (Firefox) e InPrivate (IE11 && Edge) para eliminar la interferencia de complementos / extensiones. Estos aún pueden interferir con las pruebas en este modo si están habilitados explícitamente en su configuración. Sin embargo, es un primer paso sencillo para solucionar un problema.
La razón por la que estoy aquí se debe a que Web of Trust (WoT) agregó contenido a mi página, y mi página tenía una política de seguridad de contenido muy estricta:
Esto provocó muchos errores. Estaba buscando más una respuesta sobre cómo decirle a la extensión que no intente ejecutarse en este sitio mediante programación. De esta manera, cuando las personas tienen extensiones, simplemente no se ejecutarán en mi sitio. Me imagino que si esto fuera posible, los bloqueadores de anuncios se habrían prohibido en los sitios hace mucho tiempo. Entonces mi investigación es un poco ingenua. Espero que esto ayude a cualquier otra persona que intente diagnosticar un problema que no esté específicamente relacionado con el puñado de extensiones mencionadas en otras respuestas.
fuente
Es posible que deba agregar esto a
webpack.config.js
:fuente
También enfrentaba el mismo error en mi aplicación de nodo hoy.
A continuación estaba mi API de nodo.
La solución fue muy simple, me faltaba una barra diagonal "/" antes de mi API. Entonces, después de cambiar la ruta de 'azureTable' a '/ azureTable', el problema se resolvió.
fuente
CSP le ayuda a incluir en la lista blanca las fuentes en las que confía. No se permite el acceso a todas las demás fuentes. Lea estas preguntas y respuestas detenidamente y luego asegúrese de incluir en la lista blanca las fuentes, conexiones de socket y otras fuentes si confía en ellas .
Si sabe lo que está haciendo, puede comentar la
meta
etiqueta para probar, probablemente todo funcione. Pero tenga en cuenta que usted o su usuario están protegidos aquí, por lo que mantener lameta
etiqueta probablemente sea algo bueno.fuente
Refused to load the font 'data:font/woff;base64,d09
este error<meta http-equiv="Content-Security-Policy" content="default-src *; style-src * 'unsafe-inline'; script-src * 'unsafe-inline' 'unsafe-eval'; img-src * data: 'unsafe-inline'; connect-src * 'unsafe-inline'; frame-src *;"
Tuve un problema similar. Había mencionado una ruta de carpeta de salida incorrecta en angular.json
fuente
Estaba enfrentando un problema similar.
font-src - es decirle al navegador que cargue la fuente de src que se especifica después de eso. font-src: 'self': esto indica que se cargue la familia de fuentes dentro del mismo origen o sistema. font-src: 'self' data: - esto le dice a load font-family dentro del mismo origen y las llamadas realizadas para obtener datos:
También puede recibir la advertencia "** No se pudo decodificar la fuente descargada, error de análisis OTS: etiqueta de versión no válida **" Agregue la siguiente entrada en CSP.
font-src: fuente 'self'
Esto debería cargarse ahora sin errores.
fuente
Habría utilizado estilos en línea en muchos lugares, lo que la CSP (Política de seguridad de contenido) prohíbe porque podría ser peligroso.
Simplemente intente eliminar esos estilos en línea y colóquelos dentro de una hoja de estilo dedicada.
fuente
Tuve el mismo problema y se resolvió usando
./
antes del nombre del directorio en minode.js
aplicación, es decirapp.use(express.static('./public'));
fuente
Para mí fue debido a la extensión ipfs en brave browser
fuente
La configuración de la extensión del navegador uBlock "Bloquear fuentes remotas" causará este error. (Nota: la gramática no era el problema, al menos para mí).
Por lo general, esto no es un problema. Cuando se bloquea una fuente remota, recurre a otra fuente y se emite una advertencia de consola que dice "ERR_BLOCKED_BY_CLIENT". Sin embargo, esto puede ser un problema serio cuando un sitio usa Font Awesome, porque los íconos se muestran como cuadros.
No hay mucho que un sitio web pueda hacer para solucionar este problema (pero puede evitar que sea demasiado malo, por ejemplo, etiquetando iconos basados en fuentes). Cambiar el CSP (o agregar uno) no lo solucionará. Servir las fuentes de su sitio web (y no un CDN) tampoco lo solucionará.
El usuario de uBlock, por otro lado, tiene el poder de solucionar este problema mediante una de las siguientes acciones:
fuente
Si su proyecto es vue-cli y lo ejecuta
npm run build
, debe cambiarassetsPublicPath: '/'
aassetsPublicPath'./'
fuente
Tuve el mismo problema y resultó que había un error en el directorio del archivo que estaba tratando de servir en lugar de:
Yo tenía :
fuente
También enfrenté el mismo problema hoy en mi código de ejecución. Bueno, encontré muchas respuestas aquí. Pero lo importante que quiero mencionar es que este mensaje de error es bastante ambiguo y no señala explícitamente el error exacto.
Algunos lo enfrentaron debido a las extensiones del navegador, algunos debido a patrones de URL incorrectos y yo enfrenté esto debido a un error en mi instancia de formGroup utilizada en una ventana emergente en esa pantalla. Por lo tanto, les sugiero a todos que, antes de realizar cualquier cambio nuevo en su código, depure su código y verifique que no tiene ninguno de esos errores. Seguramente encontrará la razón real depurando.
Si nada más funciona, verifique su URL, ya que esa es la razón más común para este problema.
fuente
En mi proyecto laravel & VueJS resolví este error con el archivo webpack.mix.js. Contiene
fuente
Aquí hay una parte del código que uso para dirigir mi archivo server.js a la carpeta angular dist , que se creó después de la compilación de npm
Lo arreglé cambiando
"/dist/"
a"./dist/"
fuente
En mi caso, eliminé el archivo src / registerServiceWorker de la aplicación generada create-react-app. Lo agregué y ahora todo está funcionando.
fuente