Saya selalu bertanya-tanya bagaimana cara kerja perutean React di aplikasi satu halaman. Misalnya, ketika saya ingin membuka https://example.com/a . Bagaimana ia mengetahui "a" adalah rute React di example.com, dan tidak mencoba membuka https://example.com/a/ yang tidak ada.
Sekarang saya punya masalah dengan itu. Saya membuat satu halaman aplikasi React dengan routing. Dan host versi yang dibuat dengan node.js dengan kode berikut:
const express = require('express');
const path = require('path');
app.use(express.static(path.join(__dirname, 'build_webpack')));
app.listen(3000, function() {
console.log('Listening on ' + port);
})
Saat saya membuka localhost:3000, dan menavigasi ke localhost:3000/route di dalam aplikasi, itu berfungsi dengan baik. Namun jika saya mengetik localhost:3000/route di browser dan tekan enter. Ada kesalahan yang dikeluhkan tentang:
Refused to load the font '<URL>' 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."
Kesalahan yang sama yang saya dapatkan ketika mencoba mengunjungi rute yang tidak ada: localhost:3000/routeThatDoesntExist.
Saya pikir masalahnya mungkin bagaimana saya server aplikasi dengan node.js.