当前位置:Gxlcms > PHP教程 > 七牛删除文件报错string(11)"NoURLset!"

七牛删除文件报错string(11)"NoURLset!"

时间:2021-07-01 10:21:17 帮助过:25人阅读

require_once("qiniu/rs.php");

Qiniu_SetKeys(YOUR_APP_ACCESS_KEY, YOUR_APP_SECRET_KEY);

$client = new Qiniu_MacHttpClient(null);

$err = Qiniu_RS_Delete($client, 空间名, 文件名);
if ($err !== null) {
var_dump($err);
exit();
}

array(2) { [0]=> NULL [1]=> object(Qiniu_Error)#5 (4) { ["Err"]=> string(11) "No URL set!" ["Reqid"]=> NULL ["Details"]=> NULL ["Code"]=> int(0) } }

我哪里写错了吗?

回复内容:

require_once("qiniu/rs.php");

Qiniu_SetKeys(YOUR_APP_ACCESS_KEY, YOUR_APP_SECRET_KEY);

$client = new Qiniu_MacHttpClient(null);

$err = Qiniu_RS_Delete($client, 空间名, 文件名);
if ($err !== null) {
var_dump($err);
exit();
}

array(2) { [0]=> NULL [1]=> object(Qiniu_Error)#5 (4) { ["Err"]=> string(11) "No URL set!" ["Reqid"]=> NULL ["Details"]=> NULL ["Code"]=> int(0) } }

我哪里写错了吗?

可以调试一下,看看这个是url没有设置

是curl 库报的错误, curl库的 CURLOPT_URL 没有设置

你到qiniu/http.php中找到Qiniu_MacHttpClient这个class,简单修改下RoundTrip函数在return前打印下请求:

public function RoundTrip($req) // => ($resp, $error)
{
    $incbody = Qiniu_Client_incBody($req);
    $token = $this->Mac->SignRequest($req, $incbody);
    $req->Header['Authorization'] = "QBox $token";
    var_dump($req);
    return Qiniu_Client_do($req);
}

看下请求中的url是否正确。

人气教程排行