Заголовок ответа не отображается в браузере, хотя он регистрируется в консоли — Работники Cloudflare

#javascript #cloudflare #response-headers #cloudflare-workers

Вопрос:

Я создал работника с работниками Cloudflare, чтобы добавить новый заголовок:

 async function handleRequest(request) {
  let response = await fetch(request.url);

  response = new Response(response.body, response)
  response.headers.append("Foo", "bar")



  for (const element of response.headers.keys()) {
  console.log(element);
}

  return response
}

addEventListener("fetch", event => {
  event.respondWith(handleRequest(event.request))
});
 

Пока игнорируйте цикл for, я использую его для регистрации заголовков.

введите описание изображения здесь

введите описание изображения здесь

Как видно на скриншотах, консоль регистрирует это. Однако я не вижу этого в браузере. как я должен решить эту проблему?

Комментарии:

1. Вы также убедились, что прикрепили этого работника к правильному маршруту? Я попробовал ваш код на своей стороне, и он отлично работает

Ответ №1:

Судя по заголовкам ответов, которые вы показываете на скриншоте, похоже, что заголовков Cloudflare по умолчанию нет. Возможно, вы пропустили включение прокси-сервера Cloudflare или, возможно, не подключили работника к поддомену.

В первом случае просто убедитесь, что вы включили оранжевый прокси-сервер для своего поддомена.

Для второго случая,

  1. Перейдите на Workers вкладку под своим поддоменом
  2. Щелчок Add route
  3. Установите маршрут соответствующим образом
  4. Выберите работника из списка
  5. Сохранение и тестирование

введите описание изображения здесь

Комментарии:

1. Я развернул исправления, о которых вы упомянули, я вижу это в ответе, возвращенном в предварительном просмотре справа, но он все еще не виден через мой браузер… Это нормально?

2. Это странно, выглядит ненормально. Это должно быть довольно прямолинейно, и, как уже упоминалось, один и тот же код работает с моей стороны без каких-либо манипуляций. Вы также пробовали в окне инкогнито/без какого-либо плагина? Может быть, попробуйте использовать плагин chrome, такой как анализатор заголовков http

3. не знаю почему, но это внезапно сработало. ЛОЛ. возможно, запаздывающее обновление системы или что-то в этом роде. большое спасибо!