用ajax请求领券api
第一时间想到的就是ajax,直接前端请求领券api,结果不可行[aru_52]。原因是不同源,限制了非美团域名请求api,后来一想,程序员又不是傻子[aru_162],一般都会限制这个的,于是放弃ajax,使用php curl写的。
ajax的同步与异步
先看下面的代码
function ofive(){ let fanhui; $.ajax({ url:"./qiang15.php", //请求的url地址 dataType:"text", //返回格式为json async:true,//请求是否异步 data:{"cookie":cks}, //参数值 type:"POST", //请求方式 success:function(req){ $('#15').text("抢券提示为:"+req); fanhui15 = req; } }); return fanhui; }
当时调用这个函数,返回值一直undefined[aru_60],后来发现这里的ajax设置的是异步(async:true),异步的意思就是:无论这个ajax是否执行成功,都继续执行下面的代码。也就是调用这个函数后,没有等ajax成功返回,就执行(return fanhui),这个时候(fanhui)还没有被赋值,所以一直是undefined。解决办法是改成同步(async:false),这样一定要等ajax成功返回,才会执行(return fanhui)。
本文作者为隔壁小蒋,转载请注明。
用后台伪造请求就可以了。[aru_27]
@萧瑟后台请求就是服务器ip了,都是同一个不太好。用ajax的话,就是用户的ip