在JQuery的跨网站HTTP认证(Cross site HTTP authentication i

2019-09-17 13:33发布

我想看看是否有可能登录到使用HTTP验证的第三个站点。 理想情况下,浏览器会保存凭证。 不幸的是失败每次。 任何帮助将不胜感激,我使用中的Base64 jQuery插件,我已经测试工作。

于是,两个问题:

  1. 如何查看HTTP状态代码?
  2. 这是否会最终工作原则?

<script>
$("#login_button").click(function() {   
        var username = 'myFunUsername';
        var password = 'myFunPassword';

        $.ajax({
                url: 'http://remote-site-with-http-auth.com/member_site',
                beforeSend: function(xhr) {
                        xhr.setRequestHeader("Authorization", "Basic " + $.base64.encode(username + ":" + password));
                },
                success: function(data) { $("#label").text("Logged in, yay!"); }
        }).fail(function(){ $("#label").text("It didn't work"); });

});

谢谢!!

Answer 1:

var user= 'myFunUsername';
var pwd= 'myFunPassword';
        $.ajax({
                url: 'http://remote-site-with-http-auth.com/member_site',
                crossDomain:true,
                username :user,// Keep the variable name different from parameter name to avoid confusion
                password:pwd,
                xhrFields: { /* YOUR XHR PARAMETERS HERE */}

                beforeSend: function(xhr) {
                       // Set your headers
                },
                success: function(data, textStatus, xhr) {
                    alert(xhr.status);// The status code
                    //Code for success
                }
        }).fail(function(){ 
               //Fail code here
               });

有关参数的更多详细信息,请参阅http://api.jquery.com/jQuery.ajax/



文章来源: Cross site HTTP authentication in JQuery