Это распространенный вопрос в Интернете, но я не нашел решения своей проблемы...
У меня одно и то же предупреждающее сообщение в консоли во всех моих приложениях rails, когда я нажимаю ссылку на другую страницу.
Просто нужно найти решение сейчас ...
The resource http://localhost:3000/assets/application-eda55435df3b9385974c23342a8ac80ac010272673a829df638338aed54fe933.css was preloaded using link preload but not used within a few seconds from the window's load event. Please make sure it has an appropriate
as
value and it is preloaded intentionally.
У меня нет тега в моем application.html.erb, но я использую Turbo, если это может вам помочь.
Приложение.html.erb
<head>
<title>XXXX</title>
<meta name = "viewport" content = "width=device-width,initial-scale=1">
<%= csrf_meta_tags %>
<%= csp_meta_tag %>
<meta name = "viewport" content = "width=device-width, initial-scale=1, shrink-to-fit=no">
<%= stylesheet_link_tag 'application', media: 'all', 'data-turbo-track': 'reload' %>
<%= javascript_pack_tag 'application', 'data-turbo-track': 'reload', defer: true %>
</head>
приложение.js
import Rails from "@rails/ujs"
import "@hotwired/turbo-rails"
import * as ActiveStorage from "@rails/activestorage"
import "channels"
Rails.start()
ActiveStorage.start()
import "controllers"
import "bootstrap"
Это предупреждение отображается в средах разработки и производства.
@Maxence спасибо, но я видел много таких решений, но, как вы сказали, у меня нет тега предварительной загрузки ни в моем коде, ни на одной из моих страниц, тег заголовка задается моим application.html.erb
Я столкнулся с той же проблемой с приложением, которое было обновлено с конфигураций Rails 6.0 по умолчанию до Rails 7.0 (мы обновились до 6.1 без обновления версии config.load_defaults
). Похоже, что это поведение по умолчанию, представленное в 6.1, который автоматически отправляет браузеру заголовок «Ссылка», предписывая ему предварительно загрузить ресурсы. Если вы проверите вкладку Network
в консоли браузера, вы должны увидеть это в разделе «Заголовки ответов».
Похоже, это сделано для повышения скорости загрузки страниц, см. пункт 16 в этом руководстве, но это не всегда уместно. Некоторые обсуждения и ссылки находятся в PR добавляет параметр конфигурации, чтобы отключить его и эта ветка твиттера.
Примечание для будущих посетителей: это также может вызвать проблемы с обработкой CSP, особенно для скриптов, загруженных через javascript_include_tag
с nonce: true
. Я обнаружил, что Firefox по-прежнему разрешает эти скрипты, но Safari и Chrome блокируют их, по-видимому, из-за порядка их загрузки.
Спасибо за ваше объяснение! Просто нужно добавить в development.rb: config.action_view.preload_links_header = false
Возможно, эта тема может вам помочь: stackoverflow.com/questions/49674092/…. Кроме того, если честно, я не вижу никакой «предварительной загрузки» в .erb, который вы указали в своем вопросе. Проверьте свое фактическое представление, чтобы увидеть, откуда оно исходит.