Angular Service Worker - Không tải được tài nguyên: máy chủ phản hồi với trạng thái là 504 (Gateway Timeout)


83

Tôi đang sử dụng Angular-CLI 1.6.6@angular/service-worker 5.2.5trong Angular 5.2.5ứng dụng của chúng tôi . Mọi thứ hoạt động tốt trên máy chủ lite cục bộ cũng như trên máy chủ sản xuất, ngoại trừ một thông báo lỗi xuất hiện trong môi trường sản xuất của chúng tôi:

Không tải được tài nguyên: máy chủ đã phản hồi với trạng thái 504 (Gateway Timeout)

Nhìn vào ngsw-worker.jstập lệnh, tôi tìm thấy các dòng (2466 sau) nơi thông báo lỗi ở trên được tạo:

    async safeFetch(req) {
        try {
            return await this.scope.fetch(req);
        }
        catch (err) {
            this.debugger.log(err, `Driver.fetch(${req.url})`);
            return this.adapter.newResponse(null, {
                status: 504,
                statusText: 'Gateway Timeout',
            });
        }
    } 

Lỗi ghi nhật ký bảng điều khiển trong lần bắt gây ra lỗi sau:

    TypeError: Failed to execute 'fetch' on 'ServiceWorkerGlobalScope': 'only-if-cached' can be set only with 'same-origin' mode
        at Driver.safeFetch (ngsw-worker.js:2464)
        at Driver.handleFetch (ngsw-worker.js:1954)
        at <anonymous>

Một lỗi có vẻ liên quan đến câu hỏi này: Điều gì gây ra Lỗi không thực hiện được 'tìm nạp' trên 'ServiceWorkerGlobalScope': chỉ có thể đặt 'only-if-cache' với lỗi chế độ 'same-origin'?

Yêu cầu tạo ra lỗi này là bất kỳ quyền truy cập đầu tiên nào vào ứng dụng:

https://example.com/test/#/connect
https://example.com/test/#/map?token=[accestoken]
...

Khi tải lại ứng dụng, lỗi không lặp lại.

Ai có thể giúp tôi thoát khỏi đây không? Có lỗi trong safeFetch()service worker (có thể để hỗ trợ HashLocationStrategy) không? Tôi có phải thay đổi gì trong cấu hình của mình không?


9
Có vẻ như rất nhiều người đang phải đối mặt với vấn đề này. github.com/angular/angular/issues/20756 github.com/angular/angular/issues/20970, v.v. Không giúp ích được gì, nhưng có vẻ như nó đang được xem xét theo dự án nhân viên dịch vụ góc cạnh: github.com / góc cạnh / góc cạnh / dự án / 13
sje

1
Vui lòng cung cấp nguồn ĐẦY ĐỦ (hoặc tốt hơn chưa, stackblitz xin vui lòng :)
yomateo

Bạn có thể cung cấp ảnh chụp màn hình từ tab mạng, hiển thị 504 không?
Daniel Habenicht

2
Đã có một số công việc được thực hiện về vấn đề này . @tobik đây vẫn còn là một vấn đề?
Joniras 19/1218

Câu trả lời:


1

Việc tắt tiêu đề ETag khỏi chương trình phụ trợ đã giải quyết tạm thời vấn đề này.


bạn có thể vui lòng giải thích câu trả lời của bạn, tôi có thể tìm ETag này ở đâu trong một ứng dụng góc cạnh.
vndpal

Bạn phải làm điều đó trong cấu hình phụ trợ.
Tibin Thomas
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.