2010-03-17 9 views
13

Czy przed wysłaniem wiadomości http można usunąć określone nagłówki HTTP za pomocą javascript/XmlHttpRequest?Jak usunąć nagłówki HTTP w JavaScript

Używam zastrzeżonej przeglądarki, więc nie można tego zrobić za pomocą rozwiązania specyficznego dla przeglądarki.

Na przykład, chcę usunąć nagłówek 'Authorization' przed wysłaniem wiadomości

POST /social/rpc?oauth_version=1.0& ... HTTP/1.1 

Accept: text/html, image/png, image/*, */* 
Accept-Language: ko 
Authorization: Basic Og== 
Host: test.myhost.com 

Pozdrowienia

Odpowiedz

14

Można użyć metody setRequestHeader obiektu XmlHttpRequest zakładając, że przeglądarka obsługuje tę funkcję, Jest to część W3C spec. It is also implemented by IE.

var req = new XMLHttpRequest(); 
req.setRequestHeader("Authorization", ""); 
+0

Po prostu stwierdzam, że nie jest to już konieczne. Myślałem, że to powoduje problemy, ale nie. Dzięki i tak. – Andres

+10

Według specyfikacji, nigdy nie powinno się usuwać nagłówków. Będzie tylko dołączać wartości. Więc nawet jeśli przekażesz null lub "", to nie zmieni oryginalnej wartości. – Marco

+0

Właściwie tak. – madhairsilence

4

Nigdy nie zrobił, ale teoretycznie można spróbować:

xhr.setRequestHeader('Authorization', null); 

W niektórych implementacjach istnieje również nieokreślona funkcja removeRequestHeader(), możesz też spróbować.

3

Gdy używam jQuery plik-upload i Wanner usunąć go w options metodzie ustawiony null lub '' nie działa na mnie, używam:

req.setRequestHeader("Authorization");

To działa na mnie .

+0

W jaki sposób użycie 'setRequestHeader' usuwa dla ciebie nagłówek' Authorization'? Nie rozumiem tego. co to jest 'req' mimo to? – vsync

+0

@vsync the XMLHttpRequest (xhr) – Fancyoung

0

Odpowiedź Adama nie zadziałała. Jednak następujące informacje:

xhr.setRequestHeader('Authorization', ' '); 

notice, drugi parametr to ciąg zawierający spację zamiast pustego miejsca. Nie usuwa całkowicie nagłówka, ale ustawia go na pusty ciąg znaków, co może być wystarczające w niektórych przypadkach.

Powiązane problemy