nginx代理图片上传

首先需要利用nginx代理图片访问参考

https://www.cnblogs.com/TJ21/p/12609017.html

编写接受文件的controller

 1 @PostMapping("image")
2 public ResponseEntity<String> uploadImage(MultipartFile file){
3
4 String url = null;
5 try {
6 url = uploadService.uploadImages(file);
7 } catch (IOException e) {
8 e.printStackTrace();
9 }
10 if (StringUtils.isBlank(url)){
11 return ResponseEntity.status(HttpStatus.CREATED).build();
12 }
13
14 return ResponseEntity.ok(url);
15 }

编写上传文件的service

白名单参照:

https://tool.oschina.net/commons

 1  //创建文件上传类型白名单
2 private static final List<String> CONTENT_TYPE = Arrays.asList("image/jpeg", "image/gif");
3 //创建日志常量对象
4 private static final Logger LOGGER = LoggerFactory.getLogger(UploadServiceImpl.class);
5
6 /**
7 * 文件上传方法
8 *
9 * @param file
10 * @return
11 */
12 @Override
13 public String uploadImages(MultipartFile file) {
14
15 //判断是否为图片文件
16 //获取文件名
17 String originalFilename = file.getOriginalFilename();
18 //获取文件上传类型
19 String contentType = file.getContentType();
20 //判断是否为白名单中的类型
21 if (!CONTENT_TYPE.contains(contentType)) {
22 //输出日志为什么错误1.创建日志常量2.输出原因
23 LOGGER.info("文件类型不合法 {}", originalFilename);
24 return null;
25 }
26 //判断文件内容
27 try {
28 BufferedImage bufferedImage = ImageIO.read(file.getInputStream());
29 if (bufferedImage != null) {
30 //保存
31 file.transferTo(new File("E:\\image\\" + originalFilename));
32 }
33 //返回访问路径
34 return "http://image.leyou.com/" + originalFilename;
35 } catch (IOException e) {
36 e.printStackTrace();
37 }
38 return null;
39 }

测试上传文件-->此处使用Advanced Rest Application测试

用返回路径测试是否可以访问当前上传的图片

http://image.leyou.com/IMG_20180614_134202.jpg

访问成功

nginx代理图片上传以及访问 nginx 图片上传完整版的更多相关文章

  1. Nginx代理实现内网主机访问公网服务

    通过Nginx代理实现内网主机访问公网和接口服务 1.需求: m2.test.com为公司测试环境的微信测试域名,因为要调用微信服务接口需要访问外网,现通过Nginx代理现实此功能. 2.环境如下: ...

  2. 单机部署minio,设置Nginx代理,配置https(TLS)访问

    安装 下载地址:https://dl.min.io/ # 创建目录 mkdir -p /usr/local/minio/{data,bin,etc} # 下载minio wget https://dl ...

  3. WebSocket 结合 Nginx 实现域名及 WSS 协议访问-Nginx配置

    特别提示:本人博客部分有参考网络其他博客,但均是本人亲手编写过并验证通过.如发现博客有错误,请及时提出以免误导其他人,谢谢!欢迎转载,但记得标明文章出处:http://www.cnblogs.com/ ...

  4. 用反向代理nginx proxy_pass配置解决ie8 ajax请求被拦截问题 ie8用nginx代理实现跨域请求访问 nginx405正向代理request_uri

    最近调PC版网站ie8的兼容性,发现所有ajax请求还没到后端服务器就直接ajax error了 ie8发不出ajax请求,断点调试发现ajax全进入了error,提示“No transport” 我 ...

  5. 宝塔搭建的nginx如何只允许指定IP访问--nginx如何允许指定IP访问,nginx开发者调试模式

    我的博客,向来都是简洁.有用为主,转载请注明出处. 说白了就是往nginx配置文件中加两句话 allow 127.0.0.1; deny all; 允许127.0.0.1访问 然后拒绝其他连接,返回4 ...

  6. 【zz】史上最全设计模式导学目录(完整版)

    2012年-2013年,Sunny在CSDN技术博客中陆续发表了100多篇与设计模式学习相关的文章,涵盖了七个面向对象设计原则和24个设计模式(23个GoF设计模式 +  简单工厂模式),为了方便大家 ...

  7. 使用springboot上传文件至nginx代理服务器

    nginx配置图片服务器 server { listen 8001; server_name image.xxx.com; proxy_set_header X-Forwarded-Host $hos ...

  8. Linux下使用Nginx代理访问json文件报404错误

    在网上看了很多,都说是IIS的问题,关键是使用servlet就可以正常访问,使用Nginx就不行,最后发现是其他问题,解决方案如下: 1.确认配置的路径是否正确,Nginx代理的路径和你访问的路径. ...

  9. 第十四章 nginx代理配置

    一.nginx代理 1.常见模式 1.常见模式:1)正向代理2)反向代理​2.区别1)区别在于形式上服务的"对象"不一样2)正向代理代理的对象是客户端,为客户端服务3)反向代理代理 ...

随机推荐

  1. 子组件dispatch导致其他页面刷新问题解决

    问题: 现在有一个页面,包含"项目基本要素"和"供应链管控要素"多个组件,其中一个组件有表单级联,通过产品类型的不同选取去调接口获得产品名称的下拉 调接口是通过 ...

  2. IOS开发入门教程-总结篇-写给狂热的编程爱好者们

    程序发轻狂,代码阑珊,苹果开发安卓狂!--写给狂热的编程爱好者们 写在前面的话 学习iOS应用程序开发已有一段时间,最近稍微闲下来了,正好也想记录一下前阶段的整个学习过程.索性就从最基础的开始,一步一 ...

  3. PMP变更流程

    变更流程:

  4. Offset函数(Excel函数集团)

    此处文章均为本妖原创,供下载.学习.探讨! 文章下载源是Office365国内版1Driver,如有链接问题请联系我. 请勿用于商业!谢谢 下载地址:https://officecommunity-m ...

  5. .net 6 (.net core) 发布到linux docker中

    第一步:VMware 安装 虚拟机Linux系统,本文以 CentOS 为例 .

  6. AT5341 [ABC156D] Bouquet 题解

    Content 有一个人有 \(n\) 种不同的话可供选择,TA 可以选择至少一种花做花束,但是 TA 不喜欢花的种数为 \(a\) 或者 \(b\) 的花束.求选花的方案数对 \(10^9+7\) ...

  7. DKT模型及其TensorFlow实现(Deep knowledge tracing with Tensorflow)

    今年2月15日,谷歌举办了首届TensorFlow Dev Summit,并且发布了TensorFlow 1.0 正式版. 3月18号,上海的谷歌开发者社区(GDG)组织了针对峰会的专场回顾活动.本文 ...

  8. 使用IDEA开发的java compiler经常会自动变为1.5

    在maven的pom.xml文件里面 在profiles下 <profile> <id>jdk-1.8</id> <activation> <ac ...

  9. 【LeetCode】1409. 查询带键的排列 Queries on a Permutation With Key

    作者: 负雪明烛 id: fuxuemingzhu 个人博客:http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 模拟 日期 题目地址:https://leetcode ...

  10. 【剑指Offer】左旋转字符串 解题报告(Python)

    [剑指Offer]左旋转字符串 解题报告(Python) 标签(空格分隔): 剑指Offer 题目地址:https://www.nowcoder.com/ta/coding-interviews 题目 ...