2010-09-28 20 views
9

Tôi làm theo các ví dụ: http://arunranga.com/examples/access-control/credentialedRequest.htmlChữ thập Cookie miền bằng CORS trong Safari

từ trang này: http://arunranga.com/examples/access-control/

Ví dụ làm việc trong Firefox, nhưng không Safari, bất cứ ai đã cố gắng trong việc thực hiện CORS cookie handling miền chéo, và thành công trong Safari?

Cảm ơn.

+0

gặp sự cố tương tự, cảm ơn bạn đã đăng bài! –

Trả lời

7

Điều này nghe giống như lỗi Safari. Tôi vừa xác minh rằng các cookie đa miền không được đặt trong Safari. Cookie tên miền chéo đang hoạt động trong Chrome, do đó, điều này có thể được khắc phục trong WebKit và phiên bản mới nhất chưa được chuyển sang Safari. Tôi chưa thấy một báo cáo lỗi Safari hoặc WebKit về điều này.

12

Safari cũng chặn cookie từ các trang web chưa được truy cập trực tiếp. Bạn có thể thấy trong cài đặt bảo mật. Cài đặt mặc định là Chấp nhận cookie: "Chỉ từ các trang web tôi truy cập".

Điều này sẽ giúp bạn bắt đầu. Setting cross-domain cookies in Safari

Tôi có jsonp làm việc trong safari bằng các phương pháp trong liên kết ở trên. Vì vậy, giả định rằng cookie sẽ làm việc trong bối cảnh CORS, nhưng ở giai đoạn này nó dường như không hoạt động. Ngoài ra, việc thay đổi cài đặt bảo mật dường như không có hiệu lực.

Safari có thể yêu cầu một bộ tiêu đề nghiêm ngặt hơn để trả về?

0

Tôi đã gặp phải điều này với API/UI ứng dụng trên các tên miền phụ khác nhau của Heroku, như my-api.herokuapp.com và my-ui.herokuapp.com, cookie phiên được đặt cho my-api.herokuapp.com. Ngay cả khi truy cập my-api.herokuapp.com dường như không giúp Safari trong trường hợp này với chính sách 'Chỉ từ trang web tôi truy cập' mặc định của tôi @ 23inhouse đã đề cập: http://content.screencast.com/users/artemv/folders/Jing/media/4dfc08d7-0e9c-483f-a272-bbe91549ea95/00000759.png.

Tuy nhiên, Safari chỉ hoạt động tốt khi chúng tôi gán tên miền tùy chỉnh cho các ứng dụng này và nó đã trở thành my-api.mydomain.com và my-ui.mydomain.com - vì vậy có vẻ như Safari có độ tin cậy đặc biệt thấp đối với những người lưu trữ phổ biến 'tên miền phụ. Không cần truy cập trực tiếp vào my-api.mydomain.com trong trường hợp này.

Các vấn đề liên quan