2016-03-23 26 views
2

Çalışan bir apache sunucum var. Arka uç, django tarafından desteklenir, ancak apache sunucusuna yerleştirilir. Tamamen gayet iyi çalışan bir servis çalışanım var. İşte,servis çalışanı kaydı iade edilmiyor

Kayıt kodunu yapan kod, ancak yukarıdaki kod hiçbir şekilde herhangi bir yanıt vermez. Söz, bekleyen durumda kalır. Sonunda bir yakalama eklemek bile herhangi bir hata vermez. Bu navigator.serviceworker.ready için gider, ancak sonra o işleve çözmez. Sorunun ne olduğundan emin değilim.

denedim aşağıdaki maddeleri: Sorun bu hizmet çalışanları olabilir

  • olsa aynı kökenli ve denilen tüm bu yüzden eklenen başlığında olması gerekiyor Servis-İşçi-İzin:/statik ama Bu iş yapmadı. Servis-İşçi-İzin ekledikten sonra: (MyWebSite/static/serviceworker.html örneğin): i doğrudan yoluna giderek dosyayı erişilen

  • html kaydedilir vardı/işime yaramıştı
    statik. Ancak, aynı html dosyasına django ile eşlenen URL'yi kullanarak eriştiğimde (yani, urls.py ile eşleştirdiğim url, örneğin: mywebsite/admin/worker), işe yaramıyor gibi görünüyor.

  • Göreceli yollar vermeyi denedim, ancak göreceli yollar benim durumumda çalışmıyor.

  • Bunu başka bir apache sunucusuna koydum ve iyi çalışıyor gibi görünüyor.

Ben tüm fikirlerin dışındayım. Bu biraz django problemi mi?

+1

http://stackoverflow.com/a/35780776/385997 sizin sorunuz için de geçerlidir. –

+0

Ancak, karşı karşıya olduğum sorun yok. Mutlak yol kullanırsam (mywebsite/service_worker.html), o zaman iyi çalışır. Ama ben django urls.py koymak ve başka bir url (mywebsite/admin/worker /) kullanarak aynı html erişim yolunu verirseniz o zaman aynı dosya olsa bile çalışmıyor. Kapsam, her iki durumda da aynı olmalıdır. Her zaman/statik/somedirectory olacaktır. Ama işe yaradı – prajnavantha

+0

Bu gönderiye cevap aldım http://stackoverflow.com/questions/34389485/implementing-push-notification-using-chrome-in-django – prajnavantha

cevap

0

Bu bağlantıdaki yukarıdaki yanıtın cevabını aldım Implementing push notification using chrome in Django Tek şey, urls.py dosyası aracılığıyla sw.js dosyasının yolunu vermem. Eğer kurduysanız

alan_adiniz/path_which_you_gave_during_registration

gibi

Temelde fikir servis görevlisi kaydı aynı etki alanında mevcut olması işçiyi gerektiriyor ise, bir şey ya da bir Servis-İşçi-İzin:/yol o zaman olacak

Böylece ödenek yapmanız gereken alan_adiniz/yol/path_which_you_gave_during_registration

Servis çalışanınızın kullanılabilir olması için değişiklikler yediniz.