文件服务采用阿里oss之后的问题

1、服务器docker部署之后,域名反向代理访问的本地8080端口
2、oss服务中设置了跨域访问,设置了Origin为我的域名

现在出现有几个问题
1、前端导入上传文件时,提示跨域报错,导入提交时报错。
2、导出的操作没有问题,钉钉已经接受到推送消息。但是钉钉消息查看详情无法预览,预览


我确定有这个文件,而且我将链接复制出来在浏览器中,去掉后面的&corpId=dingxxxxxxxxxxxxxx,就可以直接下载源excel文件,这是因为没有部署预览服务器的原因吗?
3、导出能够直接浏览器下载,不需要到钉钉消息中点击下载?或者直接在门户的消息通知中可以下载?

1 跨域问题, OSS 设置跨域后, 可能受限于策略更新时间的限制,不一定会立即生效。 最好把服务器的域名也到oss跨域名单里头。 我不理解你域名反向代理访问本地8080端口是什么意思,是访问服务器的8080端口还是你自己开发电脑的8080端口。

2 预览的时候报错, 预览默认走的是我们的预览服务器, 需要把你的服务器的域名加到白名单中,你也可以自己部署一个预览服务器。在admiapp里面设置预览服务器的地址。

总之报跨域的错, 说明文件没上传到oss里面, 先把这个问题解决了再解决后面的问题。

1、我已经在阿里云的oss跨域规则这里设置添加了跨域规则,添加了三个信息,纯域名,http开头的以及https开头的。已经添加了1个小时了,还没有生效。但是我看阿里云的反馈是15分钟内就可以生效的。


2、我docker的jitnode容器,映射服务器的端口是8080,http默认的端口80反向代理本地的8080端口,所以想确认是不是代理导致跨域的报错。

3、自己部署预览服务器是有特定要求吗?PDF服务器和文件预览服务器有相关文档吗?如果需要默认的,就是先将自己的域名发给你就可以了吗?

可以先参考图片设置alioss的跨域 , 给权限都放开, 缓存时间设60。然后看上传附件时是否还报跨域的错。然后oss的bucket放开公共访问的权限。

1、好的,我先设置成你说的这样了。
2、bucket我设置的公共读写

刚刚验证了,确实可以了。应该还是跨域本身在阿里云设置的问题。

那么请问关于预览服务器的事情应该如何操作?

把你预览时候报错还有域名发一下

钉钉预览消息时的报错在一开始就贴出来了。
域名已私发 :handshake:

如果想要自己搭建,有什么文档吗?

你这导出是在数据模型中直接导出的吗? 我看着像是url里面多了钉钉的 coprid导致alioss那边没事别报错的

是的,直接点击咱们极态云的导出函数导出的。

image

我在oss文件列表中是可以看到这个文件的,但是在钉钉的消息通知中的url就加上了后缀。但是我在浏览器的应用的通知消息中,点击查看详情是可以下载的。

image