Điều này không chỉ làm với một giao thức khác nhau (HTTP trên trang web của bạn vs HTTPS trên accounts.google.com
), nó cũng là vì miền không phù hợp (và cổng cho rằng vấn đề), một hạn chế áp đặt bởi Same Origin Policy.
Chính sách này dừng www.evil.com
từ tải trang web chẳng hạn như www.bank.com
bên trong khung hình (hoặc cửa sổ bật lên nếu khung bị tắt) và sau đó truy cập DOM. Nếu DOM có thể được truy cập, đây sẽ là một rủi ro bảo mật lớn vì bất kỳ trang web nào cũng có thể đọc dữ liệu cá nhân của bạn trên một trang web khác.
Có thể cho phép truy cập bằng cách thực thi chính sách một bên và xuất ra phía máy chủ để cho phép các miền được chỉ định khác đọc nội dung, tuy nhiên điều này sẽ nằm ở phía Google trong trường hợp của bạn. Vì vậy, trừ khi https://accounts.google.com
triển khai chính sách CORS, bạn sẽ không thể tạo biến thể phía máy khách của luồng phía máy chủ. Một rào cản khác là ngay cả khi CORS được triển khai, nó không cho phép truy cập vào DOM. Tuy nhiên, bạn có thể truy xuất nội dung từ một miền, giao thức hoặc cổng khác thông qua các cuộc gọi AJAX. Trang đích cũng sẽ phải xuất ra tiêu đề Access-Control-Allow-Credentials: true
để thông tin đăng nhập xác thực (ví dụ: cookie trong trường hợp này) được gửi cùng với yêu cầu và phản hồi được đọc bởi miền của bạn.
Can I use https for local development?
Để trả lời câu hỏi ban đầu của bạn, câu trả lời là có. Đây có thể là chứng chỉ tự ký cho hầu hết các mục đích và nó sẽ không ảnh hưởng đến thông báo lỗi cụ thể này trong trình duyệt của bạn (như bạn, khi người dùng trình duyệt đã chọn chấp nhận và tin tưởng chứng chỉ).
Lỗi nói rằng bạn * không * sử dụng HTTPS. Bạn có nghĩa là bạn không muốn trả tiền cho một chứng chỉ tin cậy? Bạn có tìm thấy vấn đề với chứng chỉ tự ký không? –
Tôi sử dụng nó với apache nhưng phải tạo chứng chỉ của riêng mình – Quince
Nhưng đọc lỗi cho tôi biết bạn không sử dụng https chút nào. generare certs của bạn, cấu hình apache để sử dụng ssl và thử lại. –