2017-07-18 49 views
7

Użyłem Asteroid jako mojego ddp do połączenia z moją aplikacją Meteor jako zapleczem. Z przodu działa https i działa idealnie w Chrome. Więc faktycznie składa się z dwóch oddzielnych aplikacji uruchamianych niezależnie. Ale nie poszło dobrze w Safari. Safari blokuje połączenie, ponieważ zawiera treści mieszane/niezabezpieczone.Jak skonfigurować bezpieczny websocket na aplikacji Meteor (localhost)

Do tej pory mam dodany pakiet force-ssl do mojej aplikacji Meteor, ale wciąż nie mam szczęścia. Jak włączyć protokół wss na moim komputerze lokalnym rozwoju (localhost)

Odpowiedz

1

Czy próbowałeś połączyć na localhost używając tylko http://localhost:3000? Jeśli twój backend i frontend Meteora działają na localhostu, nie powinieneś próbować łączyć się przez https lub wss. Twój komputer nie ma zaufanego certyfikatu, więc nie można nawiązać połączenia.

Również nie używaj siły-ssl lokalnie z tego samego powodu, o którym wspomniałem powyżej.

Proszę napisać pełny błąd przeglądarki Safari, jeśli powyższe rozwiązanie nie działa. Proszę wyjaśnić, co jest uruchomione gdzie (oboje są na localhost lub tylko jednym).

+0

Tak, oba są uruchomione localhost. Mogę wygenerować także certyfikat samopotwierdzenia i naprawdę potrzebuję bezpiecznej warstwy, ponieważ przeglądarka nie może akceptować treści mieszanych. – Muhaimin

+0

Nawet samopodpisany certyfikat nie zadziała, ponieważ nie będzie zaufany. Nie potrzebujesz force-ssl, zamiast tego użyj czegoś takiego jak nginx lub apache, aby wymusić ssl, gdy hostujesz swoją aplikację. Następnie w swoim środowisku programisty usuń pakiet force-ssl, który powinien działać. – JoshJoe

+0

@JoshJoe Mam do czynienia z podobnym problemem i opublikowałem go na stackoverflow, nie otrzymuję żadnych odpowiedzi. Czy możesz rzucić okiem na to? https://stackoverflow.com/questions/47430122/uncaught-typeerror-a-qs-unescape-is-not-a-function – AnoopGoudar