七牛 php base64怎么上传图片

七牛的上传图片中,php如何上传base64的图片

阅读 3.5k
2 个回答

七牛应该有文档 demo 的

    $url = "xxxx";
  $post_data = array ("file" => base64_encode(file_get_contents('test.jpg')));//这里的 key 根据七牛自行更改
  $ch = curl_init();
  curl_setopt($ch, CURLOPT_URL, $url);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  curl_setopt($ch, CURLOPT_POST, 1);
  curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post_data));
  $output = curl_exec($ch);
  curl_close($ch);
  print_r($output);
新手上路,请多包涵

上传base64图片到七牛云的文档:
https://developer.qiniu.com/k...
代码仅供参考:
function 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;
}
$str=base64_encode($filePath);//文件
$token=xxxx
echo "<pre>";

$res = request_by_curl('http://所属的地区的域名(up-z1.qiniup.com)/putb64/-1',$str,$token);
$res = json_decode($res,true);
$baseUrl = 'http://######/'.$res['key'];
// 对链接进行签名
$signedUrl = $auth->privateDownloadUrl($baseUrl);

echo "</pre>";
echo $signedUrl;

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题