今天第二篇继续来写接口服务,本次要分享的是获取QQ在线状态的接口。
代码的根目录有一个num.txt,是为了记录总共调用多少次。所以需要使用这个代码需要添加这个文件或者注释掉开头的判断就行,跟上一篇一样。
后续我会整理后在git存档,失效接口就不分享了。
- <?php
- header("Access-Control-Allow-Origin:*");
- header('Content-type: application/json');
- $qq = $_GET['qq'];
- $countfile = "num.txt";
- if (($fp = fopen($countfile, "r+")) == false) {
- //用读写模式打开文件,若不能打开就退出
- printf("打开文件 %s 失败!", $countfile);
- exit;
- } else {
- //如果文件能够正常打开,就读入文件中的数据,假设是1
- $count = fread($fp, 10);
- //读取10位数据
- $count = $count + 1;
- fclose($fp);
- //关闭当前文件
- $fp = fopen($countfile, "w+");
- //以覆盖模式打开文件
- fwrite($fp, $count);
- //写入加1后的新数据
- fclose($fp);
- //并关闭文件
- //echo $count;
- }
- if(!isset($qq) || emptyempty($qq) || $qq==''){
- $atr = array(
- "code"=>200101,
- "msg"=>"查询qq数据不能为空",
- );
- echo json_encode($atr); die;
- }
- $data = file_get_contents("http://webpresence.qq.com/getonline?type=1&$qq:");
- $data || $data = strlen(file_get_contents("http://wpa.qq.com/pa?p=2:$qq:45"));
- if(!$data) { return 0; }
- switch((string)$data){
- case 'online[0]=0;': exit('{"code":1,"statecode":0,"qq":"'.$qq.'","state":"电脑离线"}');return;
- case 'online[0]=1;': exit('{"code":"1","statecode":1,"qq":"'.$qq.'","state":"电脑在线"}') ;return;
- }
- $atr = array(
- "code"=>200102,
- "msg"=>"查询数据失败,请重试",
- );
- echo json_encode($atr); die;
- ?>
继续阅读

微信公众号
博客微信公众号,欢迎关注。
2020年12月16日 下午9:21 5F
感谢分享
2020年12月4日 下午9:30 4F
这个接口有意思
2020年11月30日 下午5:26 3F
有意思
2020年11月27日 下午6:01 2F
厉害
2020年11月26日 上午8:03 1F
一段代码,解决了很多问题。