2009-04-24 32 views
12

Có tương đương với XDomainRequest của Internet Explorer trong Firefox hoặc bất kỳ trình duyệt nào khác không?Có tương đương XDomainRequest trong Firefox không?

Tôi muốn truy cập dịch vụ/trang web bên ngoài miền của mình.

+0

này trông khá giống như một bản sao của http://stackoverflow.com/questions/667519/firefox-setting-to-enable-cross-domain-ajax-request nhưng tôi don' t biết cách XDomainRequest cũng đủ để nói nếu đó là một bản sao chính xác. –

+0

Hmm điều này có vẻ như relavent ... http: //www.machineware.com/blog/cross-domain-http-requests-in-ie-8-and-firefox-3-1.html, nhưng nó chỉ trong IE8 và FF3.1 Dường như với tôi có một hoặc hai cách khác mà bạn có thể thực hiện việc này ... – leeand00

+0

(Vì vậy chúng tôi không yêu cầu người dùng phải sử dụng IE8 hoặc FF3.1) – leeand00

Trả lời

21

Đối tượng XDomainRequest trong Internet Explorer 8 là phương thức độc quyền để yêu cầu tài nguyên nằm ngoài chính sách "cùng nguồn gốc".

Firefox 3.5+ và Safari 4+ cho phép yêu cầu tên miền chéo thông qua đối tượng XMLHTTPRequest. Tác nhân người dùng hỗ trợ XMLHTTPRequest Cấp 2 phải có hỗ trợ Chia sẻ tài nguyên gốc (CORS), cho phép truy xuất tài nguyên NẾU tài nguyên thông báo rằng nó có thể được yêu cầu từ các miền khác.

Hãy nhớ rằng tài nguyên phải tự khai báo là tài nguyên gốc chéo trước khi tác nhân người dùng tuân thủ sẽ truy xuất tài nguyên.

Thông tin thêm tại đây: http://www.w3.org/TR/cors/ và tại /TR/XMLHttpRequest2 trên trang web W3C.

2

Có thể, bạn chỉ cần đặt tiêu đề Tên miền chéo tại máy chủ đích.

dụ .htaccess:

Header set Access-Control-Allow-Origin "*" 
Header set Access-Control-Allow-Headers "X-Requested-With" 
Header set Access-Control-Max-Age "60" 

XMLHttpRequest sẽ nộp OPTIONS yêu cầu đến máy chủ mục tiêu đó sẽ phản ứng với những tiêu đề, cho phép khách hàng để gửi yêu cầu mong muốn.

Nguồn: http://www.oriontransfer.co.nz/blog/2011-05/cross-domain-ajax/index

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