模拟登陆,运行光标一直在闪,没反应
发布于 16 天前 作者 Youthink 200 次浏览 来自 问答

写了个模拟登陆一直没反应,查个各种资料,改来改去,还是不行,那写错了?请大神指点。

var options = {
	host: '210.44.176.227', 
	port:'88',
    path: '/', // 具体路径, 必须以'/'开头, 是相对于host而言的
    method: 'post', // 请求方式, 这里以post为例
    headers: { 

        'connection': "keep-alive",
        'content-length': "3097",
        'cache-control': "max-age=0",
        'accept': "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8",
        'origin': "http://210.44.176.227:88",
        'upgrade-insecure-requests': "1",
        'user-agent': "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2587.3 Safari/537.36",
        'content-type': "application/x-www-form-urlencoded",
        'referer': "http://210.44.176.227:88/",
        'accept-encoding': "gzip, deflate",
        'accept-language': "zh-CN,zh;q=0.8,en-US;q=0.6,en;q=0.4"
    }
};

// 接下来就是创建http请求
var req=http.request(options,function(res){
    res.setEncoding("utf8"); // 设置编码, 如果目标网址的编码是gbk/gbk2312神码的, 就别设置了, 下面就专门讲解
    var result = "";
    var resData = "";
    var headers = res.headers; // 像上面所说的, 获取响应的头信息
    var cookies = headers["set-cookie"]; 

    cookies.forEach(function(cookie) {
        result += cookie.replace(/path=\//g,'');
    });

    res.on("data",function(data){
        resData += data;
    });
	
    // 在数据发送完毕后触发
    res.on("end", function() {
        // querystring.parse功能: 就是解析...比如一个object会把它解析成object
        console.log(querystring.parse(resData));
    });

	req.on('error', function(err) {
		console.log(err.message);
	});

});
req.write(contents); // xhr.send(). 感觉跟这个差不多
req.end(); // 这个必须有, 不然就一直等待结束
4 回复

http用法应该没问题,看不出来~帮顶!image/webp是小亮点- -

@DevinXian 感谢。。 为什么image/webp 是亮点?

@Youthink 我也不知道目前用webp的是不是很多

我的这个问题解决了,方法记录: 我把 ‘content-length’: “3097”, 3097 改成了 contents.length 就好了

回到顶部