开通阿里云OSS

https://www.aliyun.com/product/oss?spm=5176.19720258.J_3207526240.32.e93976f4xq6CZt

创建Bucket

设置access_key和secret_key

获取endpoint

添加一个微服务用于第三方接口

上传图片到OSS

由于上传需要验证所以我们一般不会让前端直接连接OSS,那样需要再前端暴露出OSS的密钥。所以一般我们都是前端上传到后端,后端接收文件流后再调用OSS上传。这样操作虽然可以,但是接收数据流处理很耗费服务器性能,现在的方式:

前端请求后端生成一个用于上传OSS的临时签名,前端使用这个临时签名上传图片到OSS。

再微服务提供一个方法用来生成临时签名:

前端获取到临时签名后上传图片到OSS:

上传图片失败,出现跨域问题:

设置OSS允许跨域:

再试一次:

403 You have no right to access this object because of bucket acl.

报上面这个错误,原因是没有给accesskey的这个用户设置权限:

再上传一次试试:

上传成功

17.SpringCloud Alibaba-OSS的更多相关文章

  1. SpringCloud Alibaba 简介

    SpringCloud Aliababa简介 SpringCloud Alibaba是阿里巴巴集团开源的一套微服务架构解决方案. 微服务架构是为了更好的分布式系统开发,将一个应用拆分成多个子应用,每一 ...

  2. SpringCloud Alibaba (一):序言

    为什么要转用SpringCloud Alibaba? Spring Cloud Netflix项目进入维护模式 在2018年底时,Netflix宣布Hystrix进入维护模式.自2016年以来,Rib ...

  3. 【springcloud alibaba】配置中心之nacos

    接着上一篇的[springcloud alibaba]注册中心之nacos,这一篇主要讲nacos的配置中心能力.nacos的集群部署及持久化请看上一篇. ---------------------- ...

  4. 【springcloud alibaba】注册中心之nacos

    1.为什么需要注册中心 1.1 没有注册中心会怎么样 1.2 注册中心提供什么功能以及解决什么问题 2.常用的微服务注册中心对比 3.案例项目父工程 4.nacos作为注册中心的使用 4.1 单机版的 ...

  5. SpringCloud Alibaba微服务实战 - 基础环境准备

    Springcloud Aibaba现在这么火,我一直想写个基于Springcloud Alibaba一步一步构建微服务架构的系列博客,终于下定决心从今天开始本系列文章的第一篇 - 基础环境准备. 该 ...

  6. SpringCloud Alibaba微服务实战一 - 基础环境准备

    Springcloud Aibaba现在这么火,我一直想写个基于Springcloud Alibaba一步一步构建微服务架构的系列博客,终于下定决心从今天开始本系列文章的第一篇 - 基础环境准备. 该 ...

  7. SpringCloud Alibaba微服务实战三 - 服务调用

    导读:通过前面两篇文章我们准备好了微服务的基础环境并让accout-service 和 product-service对外提供了增删改查的能力,本篇我们的内容是让order-service作为消费者远 ...

  8. SpringCloud Alibaba (三):Sentinel 流量控制组件

    SpringCloud Alibaba (三):Sentinel 流量控制组件 Sentinel 是什么 随着微服务的流行,服务和服务之间的稳定性变得越来越重要.Sentinel 是面向分布式服务架构 ...

  9. SpringCloud Alibaba (四):Dubbo RPC框架

    Dubbo简介 Apache Dubbo |ˈdʌbəʊ| 是一款高性能.轻量级的开源Java RPC框架,它提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现.致 ...

  10. SpringCloud Alibaba之Nacos

    一.运行Nacos Nacos GitHub开源地址:https://github.com/alibaba/nacos Nacos 官方文档:https://nacos.io/zh-cn/docs/q ...

随机推荐

  1. css样式实现平行四边形

    强大的css样式实现平行四边形: 啥也不说了,直接上代码 <!DOCTYPE html> <html lang="en"> <head> < ...

  2. MAUI新生4.6-主题设置LightTheme&DarkTheme

    通过主题设置,可以在运行时更改应用的主题外观,比如切换亮色主题和暗黑主题.主题设置并没有新的知识点,基本的原理如下: 定义每个应用主题的ResourceDictionary,每个ResourceDic ...

  3. error: expected ‘)’ before ‘PRIx64’

    打印uint64时编译报错 printf("prefix:0x%"PRIx64"\n",ipv6Prefix); 解决办法:添加头文件 #include < ...

  4. 11、lombok日志记录

    一.添加依赖: <!--lombok插件--> <dependency> <groupId>org.projectlombok</groupId> &l ...

  5. s2-005

    漏洞名称 (CVE-2010-1870) - XWork ParameterInterceptors旁路允许远程命令执行 利用条件 Struts 2.0.0 - Struts 2.1.8.1 漏洞原理 ...

  6. Nodejs后端自动化测试

    偶然看到收藏一下 const puppeteer = require('puppeteer'); const fs = require('fs'); (async () => { const b ...

  7. 单实例Primary快速搭建Standby RAC参考手册(19.16 ADG)

    环境:Single Instance -> RAC Single Instance: db_name=demo db_unique_name=demo instance_name=demo se ...

  8. 除了Navicat和DBeaver,还有没有免费又好用的数据库管理/SQL工具推荐

    很多国内SQL学习者和开发者对Navicat.DBeaver等国外数据库管理工具已经很熟悉了.但是,有没有比他们更适合SQL开发者的数据库管理/SQL工具呢?这里,笔者结合自己的调研来聊一下. 笔者做 ...

  9. 请求的URI过长:414 Request-URI Too Large

    问题:在项目中遇到使用get 请求,发现前端传递的参数超过nginx 服务器的限制.三种解决方法(任选一种): 1.在nginx配置文件里面把这两个缓存加大 文件位置:conf/nginx.conf ...

  10. chatGPT 桌面版安装教程

    概述 标题党了,首先声明 ChatGPT 官方没有桌面版,目前市面上很多的桌面应用也在是浏览器上包了一层,而且大多做的比较粗糙,不太好用,所以都不太推荐. 作为一名骨灰级的程序员,ChatGPT 的重 ...