平平博客平平博客

平平

ping@setbug.com

平平网络setbug.com

文章数
31630
评论数
3054
浏览数
9908524
平平
ping@setbug.com
平平网络setbug.com

php+js防爬虫(反爬虫)类库urlDefender类库,url签名保护您的api接口

网站源码2020-08-08 2934  2 
摘要:编写起因  爬虫让人又爱又恨!自己用特爽但是别人对自己用就特烦!于是我...

编写起因

    爬虫让人又爱又恨!自己用特爽但是别人对自己用就特烦!于是我就写了这个urlDefender源码,防止url篡改以及抓包注入!

版权声明

   本类库为本人原创,希望转载或者复制标明出处

代码文档

js库方法及说明

文档只标出主要方法!
类名:urlDefender
方法:
    构造函数(salt=='')
        //salt为唯一值,尽量不同防止暴力破解!salt须与php中的$salt相同,否则会认为不是同一操作者
    get(data, resultType = 'json')
        //data可为json字符串,json对象,url参数字符串(a=1&b=2)
        //resultType指定返回值类型,为字符串 json,stringa=1&b=2
    getJson(data)
        //同上,默认resultType 为 json
    getString()
         //同上,默认resultType 为 string
    response(data)
        //接收并验证响应,data可为json字符串,json对象,url参数字符串(a=1&b=2)
        //返回值:缺失参数为-1,参数错误为-2,验证成功为1,超时时间默认30秒
        //可直接操作成员变量:缺失参数为lostCode,参数错误为errorCode,验证成功为successCode,超时时间为limitTime

    setSalt(salt)
        //重新设置salt值,salt须与php中的$salt相同,否则会认为不是同一操作者

php库方法及说明

文档只标出主要方法!
类名:urlDefender
方法:
     构造函数($method, $salt = '') 
        //$method为当前请求类型,$salt须与js中的salt相同,否则会认为不是同一操作者
    
defend($type = 'header')
        //开启保护!$type为参数传递方式(header,get,post,cookie)
    response($parm, $type = 'json')
        //开启响应,$parm为响应数组或url串,$type为结果类型(json,string:url编码串)

    exit()
        //需配合defend方法或response方法,如果非法访问会停止php脚本执行并输出json格式拦截参数标号及说明
    
return()
        //需配合defend方法或response方法,如果非法访问会返回拦截参数标号及说明数组!
    refresh($method = '', $salt = null)
        //手动刷新上次结果,一般不用手动调用,urlDefender会自动调用
     setResultArg($resultArg)
        //规定返回值的格式,$resultArg为数组,格式为['code' => 'code', 'msg' => 'msg', 'successCode' => 1, 'failCode' => 0,
                 'lostCode' => -1, 'errorCode' => -2, 'cofigErrorCode' => -3, 'lostMsg'=> '参数丢失',
                 'errorMsg'=> '参数错误','timeoutMsg'=> '参数过期']
    setMethod($method)
        //重新设置当前请求类型
    setSalt($salt)
        //重新设置$salt,$salt与js中的salt相同,否则会认为不是同一操作者
    setLimitTime($limitTime)
        //设置每次请求有效期,默认30秒

例子

//以jq为例
var data = {
        a: 1,
        c: 6
    };
    $.ajax({
        type: "post",
        url: "a.php",
        data: data,
        headers: (new urlDefender('a')).get(data, 'json'),
        dataType: "json",
    });
<?php
require('urlDefender.php');
$o=new UrlDefender('post','a');
$o->defend()->exit();

//若无非法请求则继续执行其他代码
echo ''I am here;
?>


文档地址

详细文档地址:http://api.setbug.com/api/urlDefender/doc.api

下载地址

隐藏内容
urlDefender类库php+js
请 回复 后查看内容!
 
继续阅读
标签:免费jsapiphp源码类库反爬虫防爬虫urlDefender
写代码真的很累!麻烦点个赞,评论一下,然后分享给自己的小伙伴!
打赏
海报分享
发表评论
表情
快捷
私密

右滑验证
Lv.1
消失的星球
试试就试试
Lv.1
一只小小鸟
ddddd(╯‵□′)╯︵┴─┴ 这个下载不好啊。