SCF函数计算搭建点赞

@基本操作  April 16, 2020

此项目为 机器人逻辑框架的功能。http://b.mxact.com/archives/76.html

a.png

其中数据库表 【下载 qqmz.sql

命名空间为qqgray

创建函数 qrlogin --用来扫码登录解析

创建SCF函数计算

1.png

创建HTTP触发器
2.png

编写函数计算代码

   <?php
use RingCentral\Psr7\Response;

/*
To enable the initializer feature (https://help.aliyun.com/document_detail/89029.html)
please implement the initializer function as below:
function initializer($context) {
    echo 'initializing' . PHP_EOL;
}
*/
require_once 'qrlogin.php';
function handler($request, $context): Response{

    $body       = $request->getBody()->getContents();
    $queries    = $request->getQueryParams();
    $method     = $request->getMethod();
    $headers    = $request->getHeaders();
    $path       = $request->getAttribute('path');
    $requestURI = $request->getAttribute('requestURI');
    $clientIP   = $request->getAttribute('clientIP');

   $_POST= setPOST($body);


    return new Response(
        200,
        [
            'Content-Type'=>'html',
            'custom_header1' => 'v1',
            'custom_header2' => ['v2', 'v3'],
        ],
     logic()
    );
}


function setPOST($body){

    if($body==''){
        return [];
    }
    $arr=explode('&',$body);

    foreach ($arr as $item){
        $arr_tmp=explode('=',$item);
        $arrnew[$arr_tmp[0]]=$arr_tmp[1];
    }
    return $arrnew;

}

function logic(){
    require_once 'qrlogin.php';
    $conn=new \qqgray\Qrlogin();

    //给jailbotPHP
    if(isset($_POST['json'])){
        return    json_encode($conn->getqrpic());
    }
    //给jailbotPHP
    if(isset($_POST['sig'])){
       return json_encode($conn->qqlogin($_POST['sig']));
    }

  
}

?>

3.png

在创建一个函数-》这次选择【事件触发】

<?php

require_once './vendor/autoload.php';
require_once 'qzone.php';

use think\facade\Db;

function handler($event, $context) {
    $logger = $GLOBALS['fcLogger'];
    Db::setConfig([
        // 默认数据连接标识
        'default'     => 'mysql',
        // 数据库连接信息
        'connections' => [
            'mysql' => [
                // 数据库类型
                'type'     => 'mysql',
                // 主机地址
                'hostname'   => '**********tencentcdb.com',
                // 用户名
                'username' => '***',
                // 数据库名
                'database' => '***',
                // 数据库编码默认采用utf8
                'charset'  => 'utf8',
                // 数据库表前缀
                'prefix'   => '',
                'password'        => '********',
                // 端口
                'hostport'        => '***********8',
                // 数据库调试模式
                'debug'    => false,
            ]
        ]
    ]);
    $task=Db::table('usersqq')->where('alive','1')->chunk(20, function($users) {
    foreach ($users as $a) {
        // 对100条用户数据进行处理操作
        $q=new \qqtask\qzone($a['uin'],$a['sid'],$a['skey'],$a['pskey'],$a['superkey']);
        $q->like(1);
        if($q->active==false){
            Db::table('usersqq')
                ->where('uin',$a['uin'])
                ->update(  $update=['alive'=>'0']);
        }
      
    }
});
  $logger->info('okkk');
}

4.png

创建定时触发器

5.png

那就搞定了??


扫描二维码,在手机上阅读!

添加新评论