js 发送http请求

时间:2025-03-04 07:28:22

最简单的方法自然是jquery

$.get();
$.post();

//example
var params = {id:1,name:'tom'};
url = '/test_post.php';
$.post(url,params,function(data){
    alert(data);//这个data就是test_post.php返回的数据
});

但是有的网站并没有加载jquery的js,如果直接用控制台写代码就会报函数没有定义的错误,当然可以把 “/jquery-1.11.“文件中的内容复制到console,不过也可以用纯的javascript

xmlhttp=new XMLHttpRequest();

例子是刷hostloc 的金币(访问其他用户的空间,可以赚2金币,每天10次机会)
代码

//jquery raw
for(var i=1;i<=20;i++)
{
    $.get("/space-uid-"+i+".html");
}

//time delay
const interval=1000;
var page=1;
var click_like=function(){
    let url="/space-uid-"+page+".html"
    $.get(url);
    page++;
    ("visit:"+url);
    if(page>10){
        interval_id=(interval_id);
    }
}
var interval_id = (click_like,interval);


//js only
for(let i=1;i<=20;i++){

    xmlhttp=new XMLHttpRequest();
    url="/space-uid-"+i+".html"
    ("GET",url,true); //第三个参数是同步异步,主线程只能异步
    //=favorOK;//发送事件后,收到信息了调用函数 
    (); 
}

其中原生js参考:
http:///article/

附:
tampermonkey的hostloc 通过访问空间赚积分的 代码,
插件在积分左边添加签到按钮,点击即可

// ==UserScript==
// @name         hostloc checkin
// @namespace    /
// @version      0.1
// @description  add button to get hostloc credit throw visit others' space
// @author       harryhare
// @match        /**
// @grant        none
// ==/UserScript==


var i=0;
function visit(){
    if(i>=15){
        return;
    }
    var xmlhttp=new XMLHttpRequest();
    var url="/space-uid-"+i+".html";
    ('visit',url);
    i++;
    ("GET",url,true); //第三个参数是同步异步,主线程只能异步
    =visit();
    ();
}


//time delay
const interval=500;
function visit2() {
    if(i>=15){
        interval_id=(interval_id);
        return;
    }
    var xmlhttp=new XMLHttpRequest();
    var url="/space-uid-"+i+".html";
    ('visit',url);
    i++;
    ("GET",url,true); //第三个参数是同步异步,主线程只能异步
    ();
}
var interval_id;

(function() {
    'use strict';

    var target=("extcreditmenu");
    if(!target){
        return;
    }
    var button=('button');
    ='签到';
    =(e)=>{
        //visit();
        interval_id= (visit2,interval);
    };
    (button);

})();