使用php对百度云BCS上传本地文件的实现及原理分析
来源:互联网 发布:看电子杂志的软件 编辑:程序博客网 时间:2024/06/05 07:53
generate_get_object_url实现本地上传文件到BCS和获取BCS中文件的url从而在web开发中灵活使用。
对于实现原理,是个人对实践的理解,若有偏差,请不吝指正。
在实践中发现,create_object的作用是将服务器上的文件(注意是服务器上的文件)上传至BCS。这也就意味着,如果我们想上传一个本地文件到BCS。我们需要完成以下两步:
一、使用传统的上传表单将本地文件上传到服务器
即建立index.html文件内容如下:
<html>
<body>
<form action="upload.php" method="post"
enctype="multipart/form-data">
<label for="file">Filename:</label>
<input type="file" name="file" id="file" />
<br />
<input type="submit" name="submit" value="Submit" />
</form>
</body>
</html>
这样就可以能过表单,将本地文件提交给upload.php去处理。
二、在upload.php中将所得到的表单发过来的临时文件上传至BCS。这样就可以完成整个上传本地文件到BCS的工作了。代码如下:
<?php
require_once 'bcs.class.php';
$host = 'bcs.duapp.com'; //online
$ak = '';//BAE应用的api_key
$sk = ‘’;//BAE应用的secret_key...不了解的可以参考BAE的使用文档
$bucket = '';//BAE下创建的云存储的名称
$object = '/'.$_FILES["file"]["name"];//以表单传过来的文件名做为object的名称,注意object必须以/开头。。可参见object命名规范
$fileUpload = $_FILES["file"]["tmp_name"];//上传的临时文件所在的位置
$baidu_bcs = new BaiduBCS ( $ak, $sk, $host );
try {
//上传文件到bcs
$response = $baidu_bcs->create_object ( $bucket, $object, $fileUpload );//将临时文件保存到BCS
if (! $response->isOK ()) {
die ( "Create object failed." );
}
//通过object获取文件url---以图片示例
$strurl=$baidu_bcs->generate_get_object_url ( $bucket, $object);//获取图片url
echo $strurl;
echo '<img src="'.$strurl.'"/>';//以图片形式显示
} catch ( Exception $e ) {
trigger_error ( $e->getMessage () );
}
?>
- 使用php对百度云BCS上传本地文件的实现及原理分析
- 使用百度BCS-Java-SDK文件夹上传及下载
- PHP文件上传的原理及实现
- PHP文件上传的原理及实现
- php文件上传的原理及实现
- PHP文件上传的原理及实现
- PHP文件上传的原理及实现
- PHP文件上传的原理及实现
- php文件上传的原理及实现
- php文件上传的原理及实现
- [转]PHP函数的实现原理及性能分析 作者:HDK (百度)
- 百度工程师讲PHP函数的实现原理及性能分析(一)
- 百度工程师讲PHP函数的实现原理及性能分析(一)
- 百度工程师讲PHP函数的实现原理及性能分析(二)
- 百度工程师讲PHP函数的实现原理及性能分析(三)
- BCS百度云存储无法创建bucket解决篇 以及API接口的使用
- Java使用百度云存储BCS-让你的数据下载飞起来
- PHP文件上传的原理及实现 函数详细设置
- 用Bitmap Font Generator 制作自己的 *.fnt 字体 用于CCLabelBMFont的创建使用
- 算法杂货铺——k均值聚类(K-means)
- 日记
- 第一篇博文
- 未来的Web:九个不可思议的WebGL应用试验
- 使用php对百度云BCS上传本地文件的实现及原理分析
- Android问题集锦之二十:Activity has leaked window that was originally added
- Flash Builder 开发视频播放器客户端(FlvPlayer.mxml)
- 【Ext JS 4】组件查找_ComponentQuery类
- Godot教程中文版-脚本(Scripting)
- ZOJ3488 Conic Section(圆锥曲线)
- Samrt
- 解读plugin.xml
- NetBean 字体美化 Source Code Pro