<?php

namespace App\Model;

class BaiduOssModel
{
    /**
     * @param $request
     * @return mixed
     */
    public static function getBaiduOssToken($request){

        try {
            $ali_base_url = getenv('ofc-store-svr') ? getenv('ofc-store-svr') : "http://ofc-store-svr-svr.micro";
            $url = $ali_base_url."/api/v1/bdAssumeRole";
            $data = array(
                "body"=>'{"accessControlList":[{"service":"bce:bos","region":"bj","effect":"Allow","resource":["media-test-bce/*"],"permission":["READ","WRITE"]}]}'
            );
            $header = array(
                'Content-Type: application/json; charset=utf-8',
                'Content-Length: ' . strlen(json_encode($data))
            );
            $res = http_request_code($url,$header,"POST",json_encode($data),2);
            LogModel::addlog([" 获取百度OSS临时token 1"=>$res,"请求URL"=>$url,"请求头header"=>$header]);

            $result = json_decode($res,true);
            if ($result["code"] != 0){
                throw new \Exception("获取token失败");
            }
        }catch (\Exception $exception){
            throw new DatabaseException($exception->getMessage());
        }
        return $result["data"];
    }

    public static function getDomain(){
        try{
            $branch = getenv('branch') ? getenv('branch') : "test";
            if ($branch == "test") {
                $domain = "https://media-test-bce.cdn.bcebos.com";
            }else{
                $domain = "https://media-bce.cdn.bcebos.com";
            }

        }catch(\Exception $exception){
            throw new DatabaseException($exception->getMessage());
        }
        return $domain;
    }

}