12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- <?php
- namespace App\Service;
- use App\Model\DeviceData;
- use Illuminate\Support\Facades\Redis;
- class ClearDataService extends Service
- {
- public static function getTokenLf(){
- $token_key = 'lf_device_token';
- $token = Redis::get($token_key);
- if(! $token){
- $url = config('ip.zslf');
- $post = array("name" => "admin","password"=>"gzy#12345","rememberMe"=>true);
- $header = ['Content-Type:application/json'];
- $curl = curl_init();
- curl_setopt_array($curl, array(
- CURLOPT_URL => $url . 'jbl/api/mes/login',
- CURLOPT_RETURNTRANSFER => true,
- CURLOPT_ENCODING => '',
- CURLOPT_MAXREDIRS => 10,
- CURLOPT_TIMEOUT => 0,
- CURLOPT_FOLLOWLOCATION => true,
- CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
- CURLOPT_CUSTOMREQUEST => 'POST',
- CURLOPT_SSL_VERIFYPEER => false,
- CURLOPT_POSTFIELDS => json_encode($post),
- CURLOPT_HTTPHEADER => $header,
- ));
- $response = curl_exec($curl);
- if ($response === false) {
- // 获取错误号
- $errorNumber = curl_errno($curl);
- // 获取错误信息
- $errorMessage = curl_error($curl);
- $message = "cURL Error #{$errorNumber}: {$errorMessage}";
- file_put_contents('lf_device_error.txt',date('Y-m-d H:i:s'). PHP_EOL . $message .PHP_EOL,8);
- }
- curl_close($curl);
- $result = json_decode($response,true);
- if(empty($result['token'])) {
- file_put_contents('lf_device_error.txt',date('Y-m-d H:i:s'). PHP_EOL . $response .PHP_EOL,8);
- return [false,''];
- }else{
- $token = $result['token'];
- $expire_time = 1728000; //20天
- Redis::set($token_key,$token);
- Redis::expire($token_key, $expire_time);
- return [true,$token];
- }
- }
- return [true,$token];
- }
- }
|