fsockopen 来模拟生成 HTTP 连接

/**
     * fsockopen 来模拟生成 HTTP 连接 
     */

    public function doRequest($host,$path, $param=array()){
        $query = isset($param)? http_build_query($param) : '';

        $port = 10086;
        $errno = 0;
        $errstr = '';
        $timeout = 360;

        $fp = fsockopen($host, $port, $errno, $errstr, $timeout);

        $out = "POST ".$path." HTTP/1.1\r\n";
        $out .= "host:".$host."\r\n";
        $out .= "content-length:".strlen($query)."\r\n";
        $out .= "content-type:application/x-www-form-urlencoded\r\n";
        $out .= "connection:close\r\n\r\n";
        $out .= $query;

        fputs($fp, $out);
        fclose($fp);
    }

调用

//查询漏电自检
                    $host = $_SERVER['SERVER_NAME'];
                    $path = "/apiv2/get-mogo/index";//这个是去请求的接口
                    $param = [
                        "sid" => $deviceid
                    ];
$result = $this->doRequest($host, $path, $param);

调用的接口

 public function actionIndex()
    {
        $request = \Yii::$app->request;

        if ($request->isPost) {
            $attributes = $request->post();
            $sid = isset($attributes['sid']) ? $attributes['sid'] : '';
            $path = \app\services\VStatusLog::newestQueryup($sid);
            $path = json_encode($path,true);
            return $path;
        }else {
            return $this->returnData('', -1, '请求方式错误');
        }

    }

 

根据结果进行判断

               用法1: 添加一个数据库字段(0查询前 1 查询成功 2查询失败)   查询后修改 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

可以吧可以吧

打赏可以获得大长腿妹子微信

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值