gofastdfs中的文件地址置换

在gofastdfs中,如果是使用断点续传,上传后,获取的文件地址要做响应的置换,获取真正的地址。

先看html的代码

		  <head>
			<meta charset="utf-8" />
			<title>go-fastdfs</title>
		<link href="https://transloadit.edgly.net/releases/uppy/v0.30.0/dist/uppy.min.css" rel="stylesheet"></head>
		  <body>
			<div id="stdUpload" style="display:none;"></div>  
			<div>
			  <div id="drag-drop-area"></div>
			  <script src="https://transloadit.edgly.net/releases/uppy/v0.30.0/dist/uppy.min.js"></script>
			  <script>var uppy = Uppy.Core().use(Uppy.Dashboard, {
				  inline: true,
				  target: '#drag-drop-area'
				}).use(Uppy.Tus, {
				  endpoint: 'http://192.168.1.117:8080/group1/big/upload/'
				})
				uppy.on('complete', (result) => {
				console.info("result:"+JSON.stringify(result));
			
				 // console.log(result) console.log('Upload complete! We’ve uploaded these files:', result.successful)
				})
				uppy.on('file-added', (file) => {
                     //uppy.setFileMeta(file)
					 // meata的内容保存在header中的Upload-Metadata中,已逗号分隔,key以空格分隔,值用base64加密
					 //console.info("file:"+JSON.stringify(file));
					 console.info("file名称:"+JSON.stringify(file));
					 uppy.setMeta({ auth_token: '9ee60e59-cb0f-4578-aaba-29b9fc2919ca',callback_url:'http://127.0.0.1/callback',filename:file.name,rename:file.name})
                   })
				
				//uppy.setMeta({ auth_token: '9ee60e59-cb0f-4578-aaba-29b9fc2919ca',callback_url:'http://127.0.0.1/callback' ,filename:'自定义文件名','path':'自定义path',scene:'自定义场景' })//这里是传递上传的认证参数,callback_url参数中 id为文件的ID,info 文转的基本信息json
				//uppy.setMeta({ auth_token: '9ee60e59-cb0f-4578-aaba-29b9fc2919ca',callback_url:'http://127.0.0.1/callback',filename:'b.zip'})//自定义参数与普通上传类似(虽然支持自定义,建议不要自定义,海量文件情况下,自定义很可能给自已给埋坑)
            </script>
			</div>
		  </body>
		</html>

上传后获取的地址一般为 http://192.168.1.117:8080/group1/big/upload/8d19f01618fde106065f1a2e9e1eafd9这样。
通过get方法 用下面的地址http://192.168.1.117:8080/group1/upload?md5=8d19f01618fde106065f1a2e9e1eafd9&output=json获取新的地址。主要新版的gofastdfs默认都会有group1(集群名)。8d19f01618fde106065f1a2e9e1eafd9 为上面返回地址中,最后的字符串值。

另外注意设置文件名。否则下载的内容为二进制文件,不带扩展名的。

原文地址:https://www.cnblogs.com/wang2650/p/13801459.html