Heim >Backend-Entwicklung >PHP-Tutorial >PHP integriert Qiniu zum Hochladen von Dateien
In diesem Artikel werden hauptsächlich relevante Informationen zur Integration von Qiniu mit PHP vorgestellt, um das Hochladen von Dateien zu ermöglichen. Freunde, die es benötigen, können darauf verweisen.
Qiniu unterstützt das Abrufen der Remote-Image-API mithilfe von access_key + Secret_key + URL zum Generieren von access_token . Fügen Sie das access_token zum Header hinzu und laden Sie es dann in die Beitrags-URL hoch, um den Upload abzuschließen.
Beispielcode:
<?php /* * * @desc URL安全形式的base64编码 * @param string $str * @return string */ function urlsafe_base64_encode($str){ $find = array("+","/"); $replace = array("-", "_"); return str_replace($find, $replace, base64_encode($str)); } /** * generate_access_token * * @desc 签名运算 * @param string $access_key * @param string $secret_key * @param string $url * @param array $params * @return string */ function generate_access_token($access_key, $secret_key, $url, $params = ''){ $parsed_url = parse_url($url); $path = $parsed_url['path']; $access = $path; if (isset($parsed_url['query'])) { $access .= "?" . $parsed_url['query']; } $access .= "\n"; if($params){ if (is_array($params)){ $params = http_build_query($params); } $access .= $params; } $digest = hash_hmac('sha1', $access, $secret_key, true); return $access_key.':'.urlsafe_base64_encode($digest); } /** * 测试 */ $access_key = '''your access_key'; $secret_key = 'your secret_key'; $fetch = urlsafe_base64_encode('http://203.208.46.200/images/srpr/logo11w.png'); $to = urlsafe_base64_encode('ibeircn:11.jpg'); $url = 'http://iovip.qbox.me/fetch/'. $fetch .'/to/' . $to; $access_token = generate_access_token($access_key, $secret_key, $url); $header[] = 'Content-Type: application/json'; $header[] = 'Authorization: QBox '. $access_token; $con = send('iovip.qbox.me/fetch/'.$fetch.'/to/'.$to, $header); var_dump($con); function send($url, $header = '') { $curl = curl_init($url); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); curl_setopt($curl, CURLOPT_HEADER,1); curl_setopt($curl, CURLOPT_HTTPHEADER, $header); curl_setopt($curl, CURLOPT_POST, 1); $con = curl_exec($curl); if ($con === false) { echo 'CURL ERROR: ' . curl_error($curl); } else { return $con; } } ?>
Das Obige ist der gesamte Inhalt dieses Artikels, ich hoffe, er gefällt euch allen .
Das obige ist der detaillierte Inhalt vonPHP integriert Qiniu zum Hochladen von Dateien. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!