ajax

var apiroot = 'http://192.168.68.208:666/ajax/api.ashx';



// function ajax( method, param, callback ){
function ajax( params ){
    var req = new XMLHttpRequest();

    // 默认参数
    var opt = {
        url: apiroot,
        type: 'get',
        data: {},
        success: function(data){}
    }


    // 合并参数
    Object.assign( opt,  params );



    // 参数格式化
    var tempParam = '';

    if( typeof opt.data === 'object' ){
        for( var name in opt.data ){
            tempParam += name + '=' + opt.data[ name ] + '&';
        }

        tempParam = tempParam.slice(0, -1);

    }else{
        tempParam = opt.data;
    }
    

    // get则拼接参数在地址栏
    if( opt.type.toLowerCase() === 'get' ){
        opt.url += '?' + tempParam;
    }



    // 打开通道
    req.open( opt.type,  opt.url,  true );



    // 监听ajax响应
    req.onreadystatechange = function( res ){
        if( req.status === 200 && req.readyState === 4 ){
            opt.success( req.responseText );        
        }      
    }



    // 如果是post, 设置请求头
    if( opt.type.toLowerCase() === 'post' ){
        req.setRequestHeader( 'Content-Type', 'application/x-www-form-urlencoded' );
    }
    
    req.send( tempParam );
}

 

posted @ 2017-12-06 15:43  Sunsin  阅读(144)  评论(0编辑  收藏  举报