1
roricon 2018-01-03 10:07:03 +08:00
|
2
jy02201949 2018-01-03 10:07:19 +08:00
之前已经收藏了,感谢分享,接又拍不怕人家黑你每月整个几千大洋的账单?
|
3
Famio OP @jy02201949 (。・∀・)ノ゙嗨,有这种担忧的,我都会天天看一下流量,慢慢完善了
|
4
gauzeehom 2018-01-03 10:44:09 +08:00
我竟然收藏过
|
6
aino 2018-01-03 11:41:23 +08:00
神马文件都可以上传 会不会很危险啊
|
7
xiqingongzi 2018-01-03 11:43:00 +08:00
点击左下角按钮不能跳转到你的博客,chrome 版本 63.0.3239.84 (正式版本) ( 64 位)
|
9
Famio OP @aino 确实什么都能传,但是又拍会把文件 encoding,比如 php 文件 torrent 文件直接访问是文本格式的,不会执行。安全问题我会再改善一下,非常感谢!
@xiqingongzi 哈哈,这个需要点“作”那个图标,只是先临时做个链接上去,感谢! |
10
fumichael 2018-01-03 11:54:36 +08:00
重复上传同一个文件是不是检查是不是同一个文件的,然后返回的链接是同一个链接的?
|
12
szxczyc 2018-01-03 12:59:35 +08:00 via iPhone
我收藏过后来就打不开了。找了好久
|
13
Famio OP @szxczyc 这个要和你道个歉,因为期间在重新规划内容,所以停站了一段时间,现在新版本上了,以后就是迭代的了,感谢你的支持!
|
15
jiqing 2018-01-03 13:56:53 +08:00 via Android
求开源
|
18
TangMonk 2018-01-03 14:36:15 +08:00 via Android
担心楼主流量
|
19
LH0811 2018-01-03 15:11:41 +08:00
楼主要是开放 api 就方便了
|
20
cy97cool 2018-01-03 15:15:31 +08:00
@Famio upyun 的表单上传 API 不是这么用的。。。。直接把 form_api_secret 写在 js 里面就意味着任何人都可以上传 /覆盖任意内容
正确的做法是实现一个服务端,用户需要上传的时候服务器执行签名算法返回 signature,以保证用户不会篡改 policy 任意上传 写了个 python 来上传 index.html: ``` import time from hashlib import md5 import json import requests import base64 options = { 'bucket': 'oss-v2url', 'save-key': '/index.html', 'expiration': int(time.time()) + 86400 } form_api_secret = '5LOuSvluJ5F/TQjEd2XE3IqKAdw=' policy = base64.b64encode(json.dumps(options).encode('utf-8')).decode() signature = md5((policy + '&' + form_api_secret).encode('utf-8')).hexdigest() x=requests.post("https://v0.api.upyun.com/"+options['bucket'], files=[('Filename','${filename}'),('Content-Type',''),('policy',policy),('signature',signature),('file',('index.html',open('index.html','rb'),'text/html'))]) print(x) print(x.headers) print(x.text) ``` 效果,不过反正你设置了 text/plain 影响不大: https://oss.v2url.com/2018/01/03/5fa4e6e0755fc504279c227fad64707f.jpg |
22
Famio OP @cy97cool 道理我都懂,我为了先完成功能使用了表单 api 来上传,我也知道明写在 js 中有隐患的,后面再改进下。谢谢兄弟提醒
|
23
cy97cool 2018-01-03 17:03:34 +08:00
@fumichael 看 js 咯 https://www.v2url.com/asset/main.js
'save-key': '/{year}/{mon}/{day}/{filemd5}{.suffix}', 看出是文件 md5 作为文件名,这个过程是 upyun 完成的 不过 form_api_secret 泄露的情况下,你可以任意指定文件存储的 key,也可以任意覆盖别人上传的图片 |
25
jsgcs 2018-01-03 18:14:48 +08:00
@xiqingongzi 我也是
|
26
jsgcs 2018-01-03 18:17:16 +08:00
文件大小有限制么
|
28
Itanium 2018-01-03 18:25:13 +08:00
|
29
wsly47 2018-01-04 07:48:01 +08:00 via iPhone
我以前也写了个差不多的
https://mizore.cn/pic/ |
30
kernel365 2018-01-04 11:04:39 +08:00
能不能删除呢?
|
32
miaomiao888 2018-01-04 12:26:59 +08:00
|
33
q409195961 2018-01-04 20:48:25 +08:00
|
34
lsido 2018-01-05 15:18:41 +08:00
|
35
hardman 2018-03-10 23:25:27 +08:00 via Android
|
36
hardman 2018-03-10 23:30:05 +08:00 via Android
|