SORU
23 Kasım 2011, ÇARŞAMBA


Nasıl jQuery kullanarak yönlendirmeleri takip etmek için ajax isteklerini engellemek için

Kullandığım jQuery ajax fonksiyonları erişim için bir web hizmeti, ancak sunucu, yerine geri dönen bir tepki ile durumu kodu açıklayan bir sorun, istek için yeniden yönlendirilmiş bir sayfa ile 200 başlık, tarif sorunu. İstemci bir şekilde çözmek istiyorum. bu herhangi bir değişiklik yapamam.

Örnek: Bir isteği bulunmayan bazı URL için de geçerli, 302 başka bir yere Yönlendirmek alıyorum. Yeni bir istek gönderilir ve bir 200 OK, bu nedenle hata yangın önleme için geri alıyorum.

Ajax isteği yönlendirmeleri takip edin ve yerine geri çağırmak önlemek için yapabileceğim bir şey var mı, tercihen hata yöntemi. Alternatif olarak, eğer bir yönlendirme istemci olmamış algılamak mümkün mü?

CEVAP
23 Kasım 2011, ÇARŞAMBA


Soru ilginç buluyorum, ama bütün sorun bana daha çok bir yanlış anlama gibi görünüyor. En azından sorunun benim anladığım açıklamaya çalışacağım.

(Şeffaf) sessiz yönlendirme XMLHttpRequest şartname (here özellikle kelimeleri görmek "... şeffaf bir şekilde yeniden izleyin ..."). Standart tek kullanıcı Aracısı (web tarayıcı) sözengelle veya bildirotomatik yönlendirmeler, bazı tür, ama XMLHttpRequest bir parçası değil. HTTP istemcisi yapılandırması (OS yapılandırma) veya web tarayıcı yapılandırmasının bir parçası. jQuery.ajax yönlendirme önlemek olabilir, herhangi bir seçeneği yok.

HTTP yeniden yönlendirme HTTP protokolünün bir parçası ve XMLHttpRequest bir parçası olduğunu görebilirsiniz. Soyutlama başka bir düzeyde, ya da ağ yığını. Örneğin XMLHttpRequest verileri yerel tarayıcı önbelleğinden HTTP proxy veya alınabilir, ve HTTP protokolünün bir parçası. Çoğunluklasunucuveri sağlayan ve istemci önbelleğe alma üzerinde etkisi olabilir.

Web sunucusu veya iletişim sırasında IP güzergah değişimi değişen IP adresini engellemek şartı ile sorunuzu ihtiyacı karşılaştırabilirsiniz. Her şeyi bazı senaryolarda ilginç olabilir, ama parçaları vardıriletişimin başka bir seviye oluşturuyorve jQuery.ajax XMLHttpRequest tarafından yönetilen olamaz.

XMLHttpRequest standart istemci yapılandırma yönlendirme engelleyen seçenekleri var. "Ben daha iyi biliyorum,, WinHttpSetOption fonksiyon bakabilirsiniz WINHTTP_DISABLE_REDIRECTS değeri ile. WINHTTP_OPTION_DISABLE_FEATURE seçeneği ayarlamak için kullanılan "Microsoft dünyanın durumda Başka bir yolu WINHTTP_OPTION_REDIRECT_POLICY_NEVER değer WINHTTP_OPTION_REDIRECT_POLICY seçeneği kullanımı. Bir Windows kullanımına sunulan bir özellik fonksiyonu WINHTTP_CALLBACK_FLAG_REDIRECT gibi bazı bildirimleri alınan geri ayarlanabilen WinHttpSetStatusCallback işlevidir.

Bu yüzden yapmak mümkün için uygulamak gereksinimleri genel, ama çözüm olacak muhtemelen bağımsız gelen işletim sistemi ya da web tarayıcısı ve seviyesi jQuery.ajax XMLHttpRequest.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Elly Awesome

    Elly Awesome

    15 ŞUBAT 2010
  • guau . .

    guau . .

    25 Ocak 2008
  • xiaoyu85

    xiaoyu85

    20 ŞUBAT 2010