您必须在代码中执行其他操作.我刚刚尝试使用1.9.6 S3 SDK的代码示例,该文件获取“text / html”内容类型.

以下是确切的(Groovy)代码:

class S3Test {

static void main(String[] args) {

def s3 = new AmazonS3Client()

def random = new Random()

def bucketName = "raniz-playground"

def keyName = "content-type-test"

byte[] contentAsBytes = new byte[1024]

random.nextBytes(contentAsBytes)

ByteArrayInputStream contentsAsStream = new ByteArrayInputStream(contentAsBytes);

ObjectMetadata md = new ObjectMetadata();

md.setContentLength(contentAsBytes.length);

md.setContentType("text/html");

s3.putObject(new PutObjectRequest(bucketName,keyName,md))

def object = s3.getObject(bucketName,keyName)

println(object.objectMetadata.contentType)

object.close()

}

}

程序打印

text/html

而S3元数据也是一样的:

以下是通过网络发送的通信(由Apache HTTP Commons调试日志提供):

>> PUT /content-type-test HTTP/1.1

>> Host: raniz-playground.s3.amazonaws.com

>> Authorization: AWS

>> User-Agent: aws-sdk-java/1.9.6 Linux/3.2.0-84-generic Java_HotSpot(TM)_64-Bit_Server_VM/25.45-b02/1.8.0_45

>> Date: Fri,12 Jun 2015 02:11:16 GMT

>> Content-Type: text/html

>> Content-Length: 1024

>> Connection: Keep-Alive

>> Expect: 100-continue

<< HTTP/1.1 200 OK

<< x-amz-id-2: mOsmhYGkW+SxipF6S2+CnmiqOhwJ62WfWUkmZk4zU3rzkWCEH9P/bT1hUz27apmO

<< x-amz-request-id: 8706AE3BE8597644

<< Date: Fri,12 Jun 2015 02:11:23 GMT

<< ETag: "6c53debeb28f1d12f7ad388b27c9036d"

<< Content-Length: 0

<< Server: AmazonS3

>> GET /content-type-test HTTP/1.1

>> Host: raniz-playground.s3.amazonaws.com

>> Authorization: AWS

>> User-Agent: aws-sdk-java/1.9.6 Linux/3.2.0-84-generic Java_HotSpot(TM)_64-Bit_Server_VM/25.45-b02/1.8.0_45

>> Date: Fri,12 Jun 2015 02:11:23 GMT

>> Content-Type: application/x-www-form-urlencoded; charset=utf-8

>> Connection: Keep-Alive

<< HTTP/1.1 200 OK

<< x-amz-id-2: 9U1CQ8yIYBKYyadKi4syaAsr+7BV76Q+5UAGj2w1zDiPC2qZN0NzUCQNv6pWGu7n

<< x-amz-request-id: 6777433366DB6436

<< Date: Fri,12 Jun 2015 02:11:24 GMT

<< Last-Modified: Fri,12 Jun 2015 02:11:23 GMT

<< ETag: "6c53debeb28f1d12f7ad388b27c9036d"

<< Accept-Ranges: bytes

<< Content-Type: text/html

<< Content-Length: 1024

<< Server: AmazonS3

这也是source code显示我们的行为 – 如果您设置内容类型,SDK将不会覆盖它.

application octet stream java,java – 为什么上传到S3的文件具有内容类型application / octet-stream,除非我命名文件.html...相关推荐

  1. JAVA图片裁剪上传实例______软件开发-帮助类

    实现思路 使用jcrop插件手机要裁剪图片的坐标 将收集到的参数传递到后台,在后台使用java图形对象绘制图像进行裁剪  后台处理流程:  1.将上传的图片按按照比例进行压缩后上传到文件服务器,并且将 ...

  2. Java web/springboot上传word/doc/docx文档(含图片)与HTML富文本导入/导出互相转换解析!附项目源码

    测试效果 先看下效果 文档内容如下: 上传 上传docx文档 查看解析内容 <html><head><style>p{margin-top:0pt;margin-b ...

  3. java获取ajax上传的文件,Java使用Ajax异步上传文件

    相关代码示例: html代码片段: 名称 class="layui-input"> 描述 文件 请选择配置文件 立即提交 重置 js代码片段: //上传配置文件 $(&quo ...

  4. java多附件上传 实例demo

    java多附件上传 实例demo <%@ page language="java" import="java.util.*" pageEncoding=& ...

  5. java压缩包加密上传,解密下载

    java压缩包加密上传,解密下载 业务场景 供应商上传投标文件需要进行加密处理,通过链接下载时下载的时加密的文件,而通过系统内访问接口下载时,下载的是解密好的文件. 问题解决思路 1. 首先配置三个保 ...

  6. JAVA项目同时上传多个文件和多个内容

    JAVA项目同时上传多个文件和多个内容   首先这俩问题是由一个功能引发的,最近项目中有这样的要求,前端要上传多个文件用于地图描绘那些东西,但只是为了拼到地图上查看一下,并不做保存,这就引发了我的纠结 ...

  7. 阿里云oss 使用, 基于Nginx 配置云服务器+oss的内网访问 , 及使用Java SDK 完成上传,下载,删除,查询文件列表操作

    一.同阿里产品,云服务器和存储对象oss-配置内网访问 阿里存储对象oss 地址: https://oss.console.aliyun.com/overview 配置须知 通过Nginx 进行网络转 ...

  8. Java中FTPClient上传中文目录、中文文件名乱码问题解决方法

    Java中FTPClient上传中文目录.中文文件名乱码问题解决方法 参考文章: (1)Java中FTPClient上传中文目录.中文文件名乱码问题解决方法 (2)https://www.cnblog ...

  9. java实现动态上传多个文件并解决文件重名问题

    java实现动态上传多个文件并解决文件重名问题 参考文章: (1)java实现动态上传多个文件并解决文件重名问题 (2)https://www.cnblogs.com/skycodefamily/p/ ...

  10. java spring mvc 上传_Java Spring MVC 上传下载文件配置及controller方法详解

    下载: 1.在spring-mvc中配置(用于100M以下的文件下载) 下载文件代码 @RequestMapping("/file/{name.rp}") public Respo ...

最新文章

  1. 关于新冠肺炎的一切|回形针
  2. 七十三、Python | Leetcode数字系列(上篇)
  3. 正确获取硬盘序列号源码
  4. 网际控制报文协议ICMP(Internet Control Message Protocol)(详解)
  5. [学习笔记] 七步从AngularJS菜鸟到专家(6):服务 [转]
  6. 【linux系统学习笔记】Ubuntu文本界面和图像界面的切换
  7. 手机远程服务器总说磁盘空间不足,查询远程服务器上磁盘空间的最佳方式
  8. 深度学习实时表情识别
  9. 大数据在国外发展现状研究学习笔记
  10. (原创)用红黄蓝RYB色相环(伊登色相环)代替RGB(RGI/RGV)色相环
  11. MacBook安装虚拟机VMware Fusion
  12. RGMII通信接口详述
  13. 微信小程序 input 事件
  14. 机器学习入门——线性回归预测广告投入数据集
  15. mht转html转换器apk,MHT文件转换工具BitRecover MHT Converter
  16. Debian 6(Squeeze)升级至Debian 7(Wheezy)
  17. 从删库到跑路,论运维的自我修养
  18. Pedestrian Detection paper
  19. python 批量转换docx只转换了一个出现pywintypes.com_error被调用的对象已与其客户端断开连接
  20. 如何画好架构图详解(建议收藏)

热门文章

  1. 关于搞国外广告联盟的一些思路
  2. java 清除stdin缓冲区_使用fflush(stdin)
  3. 【杂七杂八】《我叫MT online》反编译解析
  4. 百度在线语音合成API接口简单应用
  5. html炫酷的表格插件,pickout-纯JS炫酷下拉列表框美化插件
  6. 微信小程序“errMsg“:“openSetting:fail can only be invoked by user TAP gesture.“
  7. 简单了解cri,runtimes,CRI,shim
  8. ELDER-RAY (多头力度和空头力度)
  9. 第五(模块、包说明)
  10. Linux下PCB的task_struck结构体