又拍云存储使用记录

引:图片云存储,选择了又拍云,初次看api文档感觉有点乱啊,到网上找了各种资料之后,经过各种尝试,基本摸清了原理。

 

一、图片上传有两种方式:

 

  1. 第一种是先上传到自己的服务器然后再上传到又拍云(适用于对图片有比较特殊的处理的场景)
  2. 第二种是直接上传到又拍云

 

二、准备:

申请账号,分配操作员就不说了,直接进入主题,新建服务,

服务名称根据自己的需要随意创建,然后选择原站类型又拍云,授权已经创建的操作员

 

这样最基本的就创建完成了。如果想用自己的域名,只要按着走就可以了。

 

最基本的创建步骤就完成了,你就可以着手上传文件到又拍了。

三、上传操作

方法一:***********先上传文件到自己的服务器,上传到自己的服务器的过程就省略了

我用的是php,下载官方的sdk,下载相应的sdk,点击打开链接,以php为例,用Thinkphp,把文件放到Vendor目录下面的Upyun下面,Upyun/upyun.class.php

然后自己在Common/function.php 里面创建函数:

   

    /**
    *$savepath 图片又拍云上面保存的路径包括文件名
    *$imagepath 图片在本地服务器上的路径,TP是用'./'相对于根路径
    */
    function upload($savepath, $imagepath) {
	vendor('Upyun.upyun#class');
	$upyun = new \UpYun('你的bucket名,即服务名', '操作员', '操作员的密码');
	$fh = fopen($imagepath, 'r');
	//图片上传要变成资源类型的才能上传成功
	//如果不是资源类型的,那么将会以文本的形式上传,但是却以图片的形式命名后缀,导致问题
	
	$uploadResult = $upyun->writeFile($savepath, $fh);
	fclose($fh);
     }
 

         这样就可以把自己服务器上面的文件上传到又拍云了。

方法二:**********直接通过表单上传到又拍云

这个稍微复杂一点,涉及到签名

具体参考文档又拍云http form api 文档

准备开始:

先从后台写起:

// (回调中的所有信息均为 UTF-8 编码,签名验证的时候需要注意编码是否一致)
    	$keyArr = array();
    	$keyArr['bucketname'] = '你的bucket名';
    	$form_api_secret = '系统分配的api密钥'<span style="font-family: Arial, Helvetica, sans-serif;">;		            		    // 表单 API 功能的密匙</span>
    	
    	$options = array();
    	$options['bucket'] = $keyArr['bucketname']; 					   	// 空间名
    	$options['expiration'] = time() + 3600;        						// 授权过期时间,一天
    	$options['save-key'] = '/pic/{year}{mon}{day}{hour}{min}{sec}{filemd5}{.suffix}';//图片的保存方式
    	$options['allow-file-type'] = 'jpg,png,gif,bmp.jpeg';  				//允许上传的图片类型
    	$options['ext-param'] = json_encode(array(
    			//用来进行数据写入的依据,可以写入一些认证信息
    	));
    	//图片大小
    	$options['content-length-range'] = '1000, 2048000';					//图片的大小,1k到2M
    	//实际就是post,把数据post的地址
    	$options['notify-url'] = 'http://localhost/****'; 				// 服务端异步回调地址post
//     	$options['return-url'] = 'http://localhost/****';				    // 服务端同步回调地址get
    	
    	$keyArr['policy'] = base64_encode(json_encode($options));			//生成policy
    	$keyArr['signature'] = md5($keyArr['policy'].'&'.$form_api_secret); //生成signature
    	
    	$this->assign('upyunparam', $keyArr);

 

后台要处理两个东西:policy和signature。需要一个form api 的密钥,点击开启即可获得

后台要处理的数据在上面,处理好之后,assign到模版里面

模版里面最基本的几个组件

        <form action="http://v0.api.upyun.com/{$upyunparam['bucketname']}/" method="post" enctype="Multipart/form-data"> 
	    <input type="hidden" name="policy" value="{$upyunparam['policy']}"> 
	    <input type="hidden" name="signature" value="{$upyunparam['signature']}"> 
	    <input type="file" name="file"> 
            <input type="submit" value="upload"> 
	</form>

完毕,上传文件即可。

policy和signature原理:policy用来告诉又拍云服务器要上传的文件的一些基本验证信息,而signature就是为了防止policy被篡改,因为md5之后,policy一旦被更改就会                   无法验证通过
 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,以下是一个摄永川工地建设的脚本,同时也包含了摄设备的要求。 脚本: 场景:永川市某工地建设现场 镜头:外景 画面:镜头慢慢拉近,展现整个建筑工地的全貌。工地内有多个建筑物正在进行施工,工人们忙碌地在各个区域工作。天空中有几朵白云飘过。 旁白:永川市某工地建设现场,这里是当前该市最大的建筑工地之一。 镜头:外景 画面:镜头切换至工地内部,展现工人们在各个区域工作的场景。有的在搬运材料,有的在使用机器设备进行施工,有的在进行电线布线等工作。 旁白:在这里,有着一支由数百名工人组成的建筑团队,他们正在以最快的速度,最高的质量,打造着一座新的城市地标。 镜头:中景 画面:镜头切换至工人在使用机器设备进行施工的场景。机器设备有各种不同的类型,包括挖掘机、起重机、卡车等。 旁白:为了保证工地建设的高效性和质量,我们需要使用高品质的摄设备。 摄设备要求: 1. 摄像机:需要能够支持高清晰度摄,最好是4K分辨率的。 2. 麦克风:需要能够捕捉到工人操作机器设备时的声音,同时还要有降噪功能,以免被工地噪音影响录音效果。 3. 脚架:需要一个稳定的脚架,以保证摄画面的稳定性。 4. 电池:需要备用电池,以免在摄过程中电量不足。 5. 存储卡:需要充足的存储容量,以便能够记录下整个工地建设的过程。 镜头:中景 画面:镜头切换至工人在进行电线布线等工作的场景。工人们正在进行精细的工作,场景中有很多细节需要摄。 旁白:永川市某工地建设现场,这里不仅有着巨大的机器设备,还有着无数细心的工人。 镜头:中景 画面:镜头切换至工地内部的一个角落,展现了一些工人在休息和聊天的场景。他们身穿工作服,脸上满是疲惫,但是都在微笑着。 旁白:在这里,不仅有着高效的建筑工作,还有着无数微笑的面孔。 镜头:外景 画面:镜头最后再次展现整个建筑工地的全貌,同时天空中的云朵也变得更加明亮,整个画面变得更加明亮。 旁白:这里是永川市某工地建设现场,我们期待着未来这里的变化与发展。 以上就是摄永川工地建设的脚本,同时也包含了摄设备的要求。希望这篇脚本能够帮助你摄出一部高质量的工地建设纪录片。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值