ajax 设置请求头无效

JavaScript08

ajax 设置请求头无效,第1张

是这样设置的,只是你这里设置的这个名称有点奇怪。

如果是为了解决跨域问题,那应该是在后端的响应头加上允许跨域。

另外可以检查你的使用环境,正常来说请求头这样设置是没有问题的。

// ajax 对象

function ajaxObject() {

    var xmlHttp

    try {

        // Firefox, Opera 8.0+, Safari

        xmlHttp = new XMLHttpRequest()

        } 

    catch (e) {

        // Internet Explorer

        try {

             xmlHttp = new ActiveXObject("Msxml2.XMLHTTP")

            } catch (e) {

            try {

                xmlHttp = new ActiveXObject("Microsoft.XMLHTTP")

            } catch (e) {

             alert("您的浏览器不支持AJAX!")

             return false

            }

        }

}

    return xmlHttp

}

// ajax post请求:

function ajaxPost ( url , data , fnSucceed , fnFail , fnLoading ) {

    var ajax = ajaxObject()

    ajax.open( "post" , url , true )

    ajax.setRequestHeader( "Content-Type" , "application/x-www-form-urlencoded" )

    ajax.onreadystatechange = function () {

        if( ajax.readyState == 4 ) {

            if( ajax.status == 200 ) {

                fnSucceed( ajax.responseText )

            }

            else {

                fnFail( "HTTP请求错误!错误码:"+ajax.status )

            }

        }

        else {

            fnLoading()

        }

    }

    ajax.send( data )

}