zoukankan      html  css  js  c++  java
  • js 发送http请求

    js 发送http请求

    2018-03-11 21:19:25 harryhare 阅读数 21086更多

    分类专栏: js

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

    本文链接:https://blog.csdn.net/harryhare/article/details/79520351

    最简单的方法自然是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,如果直接用控制台写代码就会报函数没有定义的错误,当然可以把 “http://code.jquery.com/jquery-1.11.1.min.js“文件中的内容复制到console,不过也可以用纯的javascript

    xmlhttp=new XMLHttpRequest();
    • 1

    例子是刷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++;
        console.warn("visit:"+url);
        if(page>10){
            interval_id=window.clearInterval(interval_id);
        }
    }
    var interval_id = window.setInterval(click_like,interval);
    
    
    //js only
    for(let i=1;i<=20;i++){
    
        xmlhttp=new XMLHttpRequest();
        url="/space-uid-"+i+".html"
        xmlhttp.open("GET",url,true); //第三个参数是同步异步,主线程只能异步
        //xmlhttp.onreadystatechange=favorOK;//发送事件后,收到信息了调用函数 
        xmlhttp.send(); 
    }
    

    其中原生js参考: 
    http://www.jb51.net/article/86157.htm

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

    // ==UserScript==
    // @name         hostloc checkin
    // @namespace    http://tampermonkey.net/
    // @version      0.1
    // @description  add button to get hostloc credit throw visit others' space
    // @author       harryhare
    // @match        http://www.hostloc.com/**
    // @grant        none
    // ==/UserScript==
    
    
    var i=0;
    function visit(){
        if(i>=15){
            return;
        }
        var xmlhttp=new XMLHttpRequest();
        var url="/space-uid-"+i+".html";
        console.log('visit',url);
        i++;
        xmlhttp.open("GET",url,true); //第三个参数是同步异步,主线程只能异步
        xmlhttp.onreadystatechange=visit();
        xmlhttp.send();
    }
    
    
    //time delay
    const interval=500;
    function visit2() {
        if(i>=15){
            interval_id=window.clearInterval(interval_id);
            return;
        }
        var xmlhttp=new XMLHttpRequest();
        var url="/space-uid-"+i+".html";
        console.log('visit',url);
        i++;
        xmlhttp.open("GET",url,true); //第三个参数是同步异步,主线程只能异步
        xmlhttp.send();
    }
    var interval_id;
    
    (function() {
        'use strict';
    
        var target=document.getElementById("extcreditmenu");
        if(!target){
            return;
        }
        var button=document.createElement('button');
        button.innerHTML='签到';
        button.οnclick=(e)=>{
            //visit();
            interval_id= window.setInterval(visit2,interval);
        };
        target.parentElement.prepend(button);
    
    })();
  • 相关阅读:
    FIND-S:寻找极大特殊假设
    XPath实例教程
    XML:四种解析器(dom,sax,jdom,dom4j)原理及性能比较
    XML文件解析之--DOM与SAX
    JAVA中内部类(匿名内部类)访问的局部变量为什么要用final修饰?
    java中的匿名内部类总结
    java中的new BufferedReader(new InputStreamReader(System.in))
    <?xml version="1.0" encoding="UTF-8" standalone="no"?>
    区分XML中CDATA和#PCDATA
    浅谈get 和post的区别
  • 原文地址:https://www.cnblogs.com/grj001/p/12223800.html
Copyright © 2011-2022 走看看