require_once 'qiniu/autoload.php';header('Access-Control-Allow-Origin:*');define('QINIU_BUCKET', 'winroad'); //这是你的存储空间名称define('QINIU_ACCESSKEY', 'CMD9E7Oj7ftTm_e****WFWvL5C7rWDHnuy');define('QINIU_SECRETKEY', 'Gce828lG-_wTB****EKbrkF7MetST6sIPn0mS');define('QINIU_DOMAIN', ' //测试域名 define('QINIU_UPLOAD_URL', 'http://upload.qiniu.com/putb64/-1');//上传路径use Qiniu\Auth;$bucket = QINIU_BUCKET;$accessKey = QINIU_ACCESSKEY;$secretKey = QINIU_SECRETKEY;$auth = new Auth($accessKey, $secretKey);$upToken = $auth->uploadToken($bucket, null, 3600);//获取上传所需的tokendefine('QINIU_UP_TOKEN', $upToken);//tokenfunction request_by_curl($remote_server, $post_string, $upToken){ $headers = array(); $headers[] = 'Content-Type:image/png'; $headers[] = 'Authorization:UpToken ' . $upToken; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $remote_server); //curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $post_string); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10); curl_setopt($ch, CURLOPT_TIMEOUT, 30); $data = curl_exec($ch); curl_close($ch); return $data;}function qiniu_upload($base64){ $base64 = trim($base64); $base64 = str_replace('data:image/jpeg;base64,', '', $base64); //只要逗号后面的 $ret = request_by_curl(QINIU_UPLOAD_URL, $base64, QINIU_UP_TOKEN); $ret = json_decode($ret, true); if ($ret) { return $ret['key']; //只要返回的key,将key与domain拼接就能得到 上传后的url了 } else { return false; }} |
然后调用:
|
1
|
$s_license = QINIU_DOMAIN . qiniu_upload($_GPC['s_license']);//返回一个完整链接 |
本文介绍如何使用PHP脚本实现通过七牛云API进行图片上传操作。包括设置存储空间、获取上传Token及使用cURL发送POST请求等关键步骤。
571

被折叠的 条评论
为什么被折叠?



