Character encoding 如何在服务工作者中处理301重定向?

Character encoding 如何在服务工作者中处理301重定向?,character-encoding,fetch,service-worker,arabic,farsi,Character Encoding,Fetch,Service Worker,Arabic,Farsi,在我的波斯语网站上,当服务人员获取一些带有波斯语/波斯语字符的请求时,在处理301重定向时出现一些问题 通常,当用户输入关键字时,例如امسس(英文为Ramsar)会提交Ajax搜索表单,并向服务器(Apache/Laravel)发送以下请求: 请注意%D8%B1%D8%A7%D9%85%D8%B3%D8%B1是Unicode的 因此,在后端,此请求重定向到另一个URL(301重定向): 以上是此URL的编码类型: https://www.example.com/s/ramsar/اجاره-و

在我的波斯语网站上,当服务人员获取一些带有波斯语/波斯语字符的请求时,在处理301重定向时出现一些问题

通常,当用户输入关键字时,例如امسس(英文为Ramsar)会提交Ajax搜索表单,并向服务器(Apache/Laravel)发送以下请求:

请注意%D8%B1%D8%A7%D9%85%D8%B3%D8%B1是Unicode的

因此,在后端,此请求重定向到另一个URL(301重定向):

以上是此URL的编码类型:

https://www.example.com/s/ramsar/اجاره-ویلا-و-سوئیت-در-رامسر
但是,当service worker运行时,它无法设置响应URL的正确字符设置,它返回:

https://www.example.com/s/ramsar/اجارÙ-ÙÛÙا-Ù-سÙئÛت-در-راÙسر
这是我的service worker获取方法代码:

self.addEventListener("fetch", function (event) {
  if (event.request.method === "GET" && event.request.mode === "navigate") {
    event.respondWith(async function () {
      try {
        var networkResponse = await fetch(event.request);
        return networkResponse;
      } catch (error) {
        ...
      }
    }());
  }
});

我能做什么?

格式正确的问题!好问题!
https://www.example.com/s/ramsar/اجارÙ-ÙÛÙا-Ù-سÙئÛت-در-راÙسر
self.addEventListener("fetch", function (event) {
  if (event.request.method === "GET" && event.request.mode === "navigate") {
    event.respondWith(async function () {
      try {
        var networkResponse = await fetch(event.request);
        return networkResponse;
      } catch (error) {
        ...
      }
    }());
  }
});