5

www.example.com'dan teslim edilen tek bir sayfa web uygulamasına sahibim. Bu web uygulamalarıXDomainRequest veya XMLHttpRequest kullanmadan özel üstbilgilerle alanlar arası istekleri nasıl yapabilirim?

  • adında başka bir sunucuya karşı AJAX isteklerini yapması gereken api.example.com o api.example.com, son uyumludur ve böylece son değil olmak zorunda
  • istek gönderirken Authorization gibi bazı başlık alanları ayarlamak zorundadır
  • tarayıcılar

Bütün bunlar Chrome (ve diğer yeni WebKit tabanlı tarayıcılarla) api.example.com üzerinde CORS istekleri işlemek XMLHttpRequest kullanarak çalışır (örneğin IE> = 8 için). IE older than version 10, XMLHttpRequest için CORS uygulamıyor ve bunun yerine, etki alanları arası isteklerde standart olmayan XDomainRequest nesnesini sağlar. Ancak XDomainRequest, set HTTP header alanlarına bir yol uygulamıyor.

Bu yüzden sorum: XDomainRequest veya XMLHttpRequest kullanmadan özel üstbilgilerle alanlar arası istekleri nasıl yapabilirim? En iyi uygulama çözümü nedir?

Düzenleme: (* .example.com) ilgili tüm sunucuların üzerinde kontrole sahip. Korkarım

cevap

1

uygulamanızın sunucu tarafında bu istek için bir proxy uygulamak için ama başka bir yolu yoktur. An example.

+3

Bu doğru. Her zaman bir iframe ve 'postMessage' kullanabilirsiniz. – idbehold

+0

Yani en azından başka bir yol olduğunu varsayalım :) –

+0

PostMessage gibi yararlı bir yöntem hakkında hiçbir fikrim yoktu, bu yüzden teşekkürler @idbehold. Iframe içeriğini bu alana koymanız gerektiğinden, api.example.com üzerinde kontrol sahibi olmanız gerekir. Ayrıca, IE'de yalnızca postMessage ile dizeleri gönderebileceğiniz anlaşılıyor. –

İlgili konular