2017-05-12 2 views
0

Ich versuche eine PWA für unsere Sites zu entwickeln. In Produktion und Inszenierung bedienen wir alles aus einer Domäne. in der Entwicklung auf einem lokalen Rechner dienen jedoch wir HTML von einem Port Django-Server zBService Worker von einem anderen Port auf einem lokalen Rechner bedient

http://localhost:8000

Und die Vermögenswerte (einschließlich JS) mit Grunt-Server von einem anderen Port verwenden:

http://localhost:8001

Das Problem ist, dass der Umfang der Service-Mitarbeiter daher nur auf Assets beschränkt ist, was nutzlos ist, ich möchte Seiten am 8000-Port-Ursprung offline cachen.

Ich habe etwas der Lage gewesen, durch den Dienst des Servicemitarbeiters als benutzerdefinierte Ansicht in Django um dies zu realisieren:

# urls.py 

url(r'^(?P<scope>.*)sw\.js', service_worker_handler) 

# views.py 

def service_worker_handler(request, scope='/'): 
    return HttpResponse(render_to_string('assets/sw.js', { 
     'scope': scope, 
    }), content_type="application/x-javascript") 

Aber ich glaube nicht, das ist eine gute Lösung. Dieser Code richtet benutzerdefinierte Routing-Regeln ein, die für die Produktion überhaupt nicht erforderlich sind.

Was ich suche ist eine lokale Lösung mit einem Proxy, oder etwas anderes, das würde ich den Service-Arbeiter mit Grunzen wie alle anderen Vermögenswerte dienen lassen.

Antwort

Verwandte Themen