8

Arka plan modunda sunucudan dosya indirme konusunda sorun yaşıyoruz. İsteği başka bir sunucuya yönlendirirken HTTP başlığı "Yetkilendirme" alanı kaybolur.NSURLRequest, isteği yeniden yönlendirirken HTTP üstbilgisini "Yetkilendirme" kaybetti

Bazı denemeler yaptık ve diğer alanların (hatta aynı olsa da “Authorization_” sonundaki alt çizgi simgesiyle) yönlendirme konusunda mükemmel çalıştığını fark ettik. Farklı sunucuların farklı kimlik doğrulama verileri kullanması gibi bazı güvenlik nedenlerine göre bu alan silinir gibi görünüyor.

O

URLSession:task:willPerformHTTPRedirection:newRequest:completionHandler: 

yöntemi kullanarak ön plan modunda manuel “Yetki” alanını eklemek mümkündür. Yönlendirme isteğini arka plan modunda kullanmaya çalıştığımızda bir sorun var. Çünkü belgelere göre "Arka planda oturumlar otomatik olarak yönlendirmeleri izler."

RFC 2616'da bu alanın atlanmasıyla ilgili hiçbir şey bulamıyorum, ancak arka planda yeniden yönlendirme sırasında “Yetkilendirme” alanını kaydetmek için belgelenmemiş bir çözüm olduğunu varsayalım. .

bana bizim ön uç sunucu o yönlendirilir sunucu güvenilen söyleyebilirim yönlendirme yanıt olarak bazı özel alanını sağlayabilir düşünelim ve biz herhangi bir değişiklik yapmadan “Yetkilendirme” alanını kullanabilirsiniz. sadece bir

olduğunu That fikir ve muhtemelen onu bir şekilde kullanmalıyız, lütfen bizi yönlendirir misiniz?

cevap

3

'Yetkilendirme' başlığı, değiştirilmemesi önerilen 'özel' başlıklardan biridir. Bu Apple'ın belgelerinde (LINK) dan:

NSURLConnection sınıfı ve NSURLSession sınıfları sizin için HTTP protokolü çeşitli yönlerini> işlemek için tasarlanmıştır. Sonuç olarak, aşağıdaki başlıkları değiştirmemelisiniz:

  • Yetkilendirme
  • Bağlantı
  • Sunucu
  • WWW-Authenticate
+0

, Rafal teşekkür ederiz. WWDC Laboratuvarı'nda Apple mühendisiyle bu soru hakkında bir konuşma yaptım ve "Authorization_" gibi bazı özel alanların (alt çizgi ile) kullanılması için iyi bir çözüm olabileceğine karar verdi. Bir kesmek gibi görünüyor, ama beklendiği gibi arka planda çalışıyor – gN0Me

İlgili konular