Отказался отображать «http://127.0.0.1:8000/files/xxx.pdf' во фрейме», поскольку для «X-Frame-Options» установлено значение «sameorigin» в Node Express API - PullRequest
2 голосов
/ 04 октября 2019

Как ответили в , этот вопрос применил решение, но все еще не может связать PDF-файл в фрейме другого исходного проекта. См. ошибка консоли Я получаю.

Решение, которое я применил:

app.use(helmet.frameguard({
  action: 'allow-from',
  domain: 'http://localhost:4200'
}))

Есть ли какие-либо другие проблемы или я делаю какую-то ошибку?

Спасибо

1 Ответ

2 голосов
/ 04 октября 2019

Вы можете использовать

Некоторые браузеры не поддерживают функции Helmet.js, функцию ALLOW-FROM. Например, Safari, который вы, возможно, используете.

Проверьте совместимость для ALLOW-FROM здесь: здесь

app.use(frameguard({ action: 'sameorigin' })) // Defaults 

Для обслуживания статических данныхфайлы из каталога в экспресс-использовании (статические файлы Express Servering) :

Создайте общую папку, поместите в нее элементы.

Затем вы использовали бы http://localhost:8000/name.pdf

app.use(express.static('public'))

Поскольку путь является относительным, если вы запускаете приложение из другого каталога, вы можете использовать этот подход.

Затем вы будете использовать http://localhost:8000/static/name.pdf

app.use('/static', express.static(path.join(__dirname, 'public')))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...