BaiduApiClient::upload PHP Method

upload() public method

Call a file upload api.
public upload ( string $uri, $params = [] ) : Returns
$uri string Uri for the api, it could be the whole url, like 'https://openapi.baidu.com/file/2.0/cloudalbum/picture/upload', or just api method only, like 'cloudalbum/picture/upload', if the api is provided under the domain of openapi.baidu.com.
$params Api specific parameters.
return Returns an array if success, or false if failed.
    public function upload($uri, $params = array())
    {
        $params = array_merge(array('access_token' => $this->getAccessToken()), $params);
        if (substr($uri, 0, 8) === 'https://' || substr($uri, 0, 7) === 'http://') {
            //do nothing
        } elseif (substr($uri, 0, 6) === '/file/') {
            $uri = self::$BD_OPENAPI_DEFAULT_DOMAINS['file'] . $uri;
        } else {
            $uri = self::$BD_OPENAPI_DEFAULT_PREFIXS['file'] . $uri;
        }
        $result = BaiduUtils::request($uri, $params, 'POST', true);
        if ($result !== false) {
            $result = $this->converJson2Array($result);
            if (is_array($result) && isset($result['error_code'])) {
                BaiduUtils::setError(-1, 'failed to call baidu openapi: error_code[' . $result['error_code'] . '] error_msg[' . $result['error_msg'] . ']');
                return false;
            }
        }
        return $result;
    }