Bạn không thể tìm thấy bất kỳ điều gì cụ thể cho tình huống này trực tuyến để tôi ... Tôi cần đặt/lấy cookie được lưu trữ tại "first.com" trong khi duyệt "second.com", tôi có toàn quyền truy cập "first.com" nhưng tôi chỉ có quyền truy cập javascript (có thể thao tác DOM như tôi muốn) trên "second.com".Bắt đặt cookie trên các tên miền khác nhau, với javascript hoặc khác
Cách tiếp cận đầu tiên của tôi là tạo iframe trên second.com (với js) đã tải một trang như "first.com/doAjax?setCookie=xxx" và đã thực hiện cuộc gọi ajax để nói "first.com/setCookie ? cookieData = xxx "sẽ đặt cookie trên" first.com "với dữ liệu mà chúng tôi đã truyền qua.
Điều đó khá có ích khi thiết lập cookie trên first.com từ second.com - để nhận cookie, về cơ bản tôi đã làm theo cùng một quy trình, tạo iframe đã tải "first.com/doAjax?getCookie" và điều đó sẽ thực hiện cuộc gọi ajax để nói "first.com/getCookie" sẽ đọc thông tin cookie trên first.com và trả về nó dưới dạng đối tượng JSON.
Vấn đề là tôi không thể đưa đối tượng cookie JSON đó trở lại "second.com" để tôi có thể đọc nó, có lẽ tôi chỉ có thể mang nó khi cuộc gọi Ajax hoàn tất bằng cách sử dụng "window.top" nhưng có vấn đề về thời gian vì nó không liên quan đến thời điểm iframe được tải. Tôi hy vọng tôi rõ ràng và đã tự hỏi nếu có một giải pháp dễ dàng hơn là điên này iframe-> ajax crap, cũng có vẻ như điều này thậm chí sẽ không làm việc để nhận được cookie trong SAFARI.
Chỉ cần lưu ý rằng điều này thực sự không an toàn vì bất kỳ ai cũng có thể đặt và nhận cookie cho first.com –
@Luca Và nếu người dùng đã tắt cookie của bên thứ ba, bạn thậm chí sẽ không thể đặt cookie trong iframe ngay từ đầu. – Pacerier