Standardauthentifizierung mit XHR

Ich versuche, eine Antwort von meinem Server zu erhalten, für die eine grundlegende Authentifizierung erforderlich ist. Also, wenn ich Locken benutze als:

curl -u user:pass http://myserver.com/get/send-my-data

Es gibt mir die richtige Antwort. Aber wenn ich eine XHR-Anfrage mit jquery AJAX erstelle. Ich habe 403 Fehler. Hier ist mein AJAX-Setup:

            $.ajax ({
            type: 'GET',
            url: 'http://myserver.com/get/send-my-data',
            beforeSend: function(xhr) {
                xhr.setRequestHeader("Authorization", "Basic" + encode64(user:pass)); // I have calculated base64 encoded value of user:pass correctly.
            },
            success: function(d) { console.log(d); },
            crossDomain: 'true'
        });

Ich habe 403 Antwort. Hier ist der Anforderungsheader, der von curl mit der Option -v abgerufen wird.

> POST /get/send-my-data HTTP/1.1
**> Authorization: Basic ********** // Removed original code deliberately**
> User-Agent: curl/7.27.0
> Host: localhost:8080
> Accept: */*
> Content-Length: 264
> Expect: 100-continue
> Content-Type: multipart/form-data; boundary=----------------------------3c0e06f1e2b4

Hier ist der Header, den Charles von meiner XHR-Anfrage erhalten hat

OPTIONS /get/send-my-data HTTP/1.1
Host    10.40.55.110:4502
Access-Control-Request-Method   GET
Origin  http://localhost:8080
User-Agent  Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_5) AppleWebKit/537.4 (KHTML,     like Gecko) Chrome/22.0.1229.79 Safari/537.4
**Access-Control-Request-Headers    origin, authorization, accept**
Accept  */*
Referer http://localhost:8080/proof/check.html
Accept-Encoding gzip,deflate,sdch
Accept-Language en-US,en;q=0.8
Accept-Charset  ISO-8859-1,utf-8;q=0.7,*;q=0.3

Ich konnte nicht verstehen, warum das passiert? WARUM in meinem XHR-Anforderungsheader der Autorisierungsheader nicht angezeigt wird, wie im Curl-Header gezeigt. Bitte schlagen Sie vor, wo ich falsch mache.

PS: Es ist eine domänenübergreifende Anfrage.

Antworten auf die Frage(1)

Ihre Antwort auf die Frage