对象存储oss使用问题之文件上传在暂停时报错:ResponseError: socket hang up如何解决

本文涉及的产品
对象存储 OSS,20GB 3个月
对象存储 OSS,内容安全 1000次 1年
对象存储 OSS,恶意文件检测 1000次 1年
简介: 《对象存储OSS操作报错合集》精选了用户在使用阿里云对象存储服务(OSS)过程中出现的各种常见及疑难报错情况,包括但不限于权限问题、上传下载异常、Bucket配置错误、网络连接问题、跨域资源共享(CORS)设定错误、数据一致性问题以及API调用失败等场景。为用户降低故障排查时间,确保OSS服务的稳定运行与高效利用。

问题一:oos文件上传在暂停时报错ResponseError: socket hang up


对象存储OSS中使用node.js SDK调用断点续传时const OSS = require('ali-oss');const client = new OSS({})client.cancel()nodejs会报错ResponseError: socket hang up 求大神告知一下原因和解决办法!!!!!!!!!!!!!!!!!!!!!!!!


参考回答:

错误。socket hang up当您在使用阿里云 OSS SDK 进行文件上传操作时,如果在上传过程中出现异常或意外情况(例如网络中断、连接超时等),可能会导致上传进程中断,从而引发 为了解决这个问题,您可以尝试以下几种方法: 异常,并在异常处理程序中重新发送请求。例如:ResponseError 语句捕获 try/except1. 重试上传操作:在上传过程中出现错误时,您可以尝试捕获异常并重新发送上传请求。您可以使用

import oss2
bucket = oss2.Bucket(oss2.Auth('<your-access-key-id>', '<your-access-key-secret>'), '<your-bucket-name>', '<your-endpoint>')
# 待上传的文件路径
local_file_path = '<local-file-path>'
# 在 OSS 中保存的文件名
oss_file_key = '<oss-file-key>'
# 上传文件
while True:
    try:
        bucket.put_object_from_file(oss_file_key, local_file_path)
        break
    except oss2.exceptions.ResponseError as e:
        print(f"Upload failed: {e}")
        print("Retrying...")
循环,如果上传发生异常,就会输出异常信息并进行重试。 while True在上述代码中,我们在上传文件时使用了一个 1. 调整超时时间:您还可以尝试调整 OSS SDK 中的超时时间以避免连接中断。可以使用如下方法进行设置:
import oss2
auth = oss2.Auth('<your-access-key-id>', '<your-access-key-secret>')
bucket = oss2.Bucket(auth, '<your-bucket-name>', '<your-endpoint>')
# 调整超时时间(单位:秒)
oss2.defaults.connection_pool_idle_timeout = 30
# 待上传的文件路径
local_file_path = '<local-file-path>'
# 在 OSS 中保存的文件名
oss_file_key = '<oss-file-key>'
# 上传文件
bucket.put_object_from_file(oss_file_key, local_file_path)
属性调整了连接池中的空闲连接超时时间。如果您发现长时间的暂停正在导致连接中断,可以适当增加这个值。 oss2.defaults.connection_pool_idle_timeout在上述代码中,我们使用  错误。 socket hang up1. 检查网络设置和防火墙:最后,您还可以检查本地计算机的网络设置和防火墙设置是否正确。如果您的计算机没有正确配置网络或者防火墙异常,则可能会导致上传过程中出现


关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/518645


问题二:上传文件到osscURL error: Failed to connect to127.0.0.1



参考回答:

这个错误提示表明在尝试上传文件到OSS时,出现了连接被拒绝的问题。可能的原因有以下几点:

1. OSS服务未启动或无法访问。请检查OSS服务的运行状态和网络连接是否正常。

1. 防火墙设置阻止了连接。请检查防火墙规则,确保允许与OSS服务的通信。

1. 本地网络问题导致连接失败。请检查本地网络设置,确保网络连接正常。

1. cURL配置问题。请检查cURL的配置文件,确保正确设置了代理、超时等参数。

针对这个问题,你可以尝试以下解决方案:

1. 确保OSS服务已启动并正常运行。

1. 检查防火墙设置,确保允许与OSS服务的通信。

1. 检查本地网络设置,确保网络连接正常。

1. 检查cURL的配置文件,确保正确设置了代理、超时等参数。


关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/591187


问题三:上传文件到oss出现问题


上传文件到oss报错:"RequestCoreException: cURL error: Failed to connect to 127.0.0.1 port 15732 after 2049 ms: Connection refused (7)"


参考回答:

这个错误提示表明在尝试上传文件到OSS时,出现了连接被拒绝的问题。可能的原因有以下几点:

1. OSS服务未启动或无法访问。请检查OSS服务的运行状态和网络连接是否正常。

1. 防火墙设置阻止了连接。请检查防火墙规则,确保允许与OSS服务的通信。

1. 本地网络问题导致连接失败。请检查本地网络设置,确保网络连接正常。

1. cURL配置问题。请检查cURL的配置文件,确保正确设置了代理、超时等参数。

针对这个问题,你可以尝试以下解决方案:

1. 确保OSS服务已启动并正常运行。

1. 检查防火墙设置,确保允许与OSS服务的通信。

1. 检查本地网络设置,确保网络连接正常。

1. 检查cURL的配置文件,确保正确设置了代理、超时等参数。


关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/591188


问题四:OSS调用是报错AccessForbidden


2023-10-13 17:29:41.796 WARN 12976 --- [nio-6789-exec-8] com.aliyun.oss : [Server]Unable to execute HTTP request: AccessForbidden


参考回答:

AccessForbiddenCORSResponse: This CORS request is not allowed. This is usually because the evalution of Origin, request method / Access-Control-Request-Method or Access-Control-Requet-Headers are not whitelisted by the resource's CORS spec问题原因:没有配置CORS或CORS配置错误。解决方案:请参见设置跨域资源共享进行排查。https://help.aliyun.com/zh/oss/user-guide/cors-12#concept-pbw-4df-vdb跨域设置CORS(Cross-Origin Resource Sharing)简称跨域访问,是HTML5提供的标准跨域解决方案,允许Web应用服务器进行跨域访问控制,确保跨域数据传输的安全性。注意事项每个Bucket最多可以配置10条跨域规则。当OSS收到一个跨域请求(或者OPTIONS请求)时,会读取Bucket对应的CORS规则,然后进行相应的权限检查。OSS会依次检查每一条规则,使用第一条匹配的规则来允许请求并返回对应的Header。如果所有规则都匹配失败,则不附加任何CORS相关的Header。如果您开启了CDN加速,并且需要进行跨域访问时,您需要在CDN控制台配置跨域规则。具体步骤,请参见CDN如何配置跨域资源共享(CORS)。


关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/560044


问题五:alibaba-cloud-oss-java-sdk报错


报错

Parameter 0 of method inetIPv6Util in com.alibaba.cloud.nacos.utils.UtilIPv6AutoConfiguration required a single bean, but 2 were found:
    - spring.cloud.inetutils-org.springframework.cloud.commons.util.InetUtilsProperties: defined in null
    - inetUtilsProperties: defined by method 'inetUtilsProperties' in class path resource [org/springframework/cloud/commons/util/UtilAutoConfiguration.class]
父项目依赖:
<properties>
        <maven.compiler.source>8</maven.compiler.source>
        <maven.compiler.target>8</maven.compiler.target>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <spring-boot.version>2.7.7</spring-boot.version>
        <spring-cloud.version>2021.0.5</spring-cloud.version>
        <spring-cloud-alibaba.version>2021.0.4.0</spring-cloud-alibaba.version>
    </properties>
    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-dependencies</artifactId>
                <version>${spring-boot.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <!-- SpringCloud 微服务 -->
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>${spring-cloud.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <!-- SpringCloud Alibaba 微服务 -->
            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-alibaba-dependencies</artifactId>
                <version>${spring-cloud-alibaba.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>
子项目依赖:
<dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alicloud-oss</artifactId>
            <version>2.2.0.RELEASE</version>
        </dependency>
upload代码:
@Autowired
private OSSClient ossClient;
@Test
void testOssClientUpload() throws FileNotFoundException {
  String bucketName = "cloud-big-mall";
  String objectName = "123.png";
  FileInputStream file = new FileInputStream("C:\\Users\\Alex.Mahone\\Pictures\\Screenshots\\123.png");
  ossClient.putObject(bucketName, objectName, file);
}
yml配置:
alicloud:
      access-key: xxx
      secret-key: xxx
      oss:
        endpoint: xxx


参考回答:

cloud可能有冲突这个错误是由于项目中有两个InetUtilsProperties类型的bean,而com.alibaba.cloud.nacos.utils.UtilIPv6AutoConfiguration类中的inetIPv6Util方法只需要一个参数。这导致了Spring Boot的自动配置失败,无法启动应用程序。


关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/562347

相关实践学习
借助OSS搭建在线教育视频课程分享网站
本教程介绍如何基于云服务器ECS和对象存储OSS,搭建一个在线教育视频课程分享网站。
相关文章
|
6月前
|
JavaScript 前端开发 Java
oss小文件上传
oss小文件上传
77 6
|
5月前
|
存储 Java Maven
大事件后端项目31--------文件上传_阿里云OSS_入门程序
大事件后端项目31--------文件上传_阿里云OSS_入门程序
|
5月前
|
存储 运维 Java
大事件后端项目30------文件上传_阿里云OSS_准备工作
大事件后端项目30------文件上传_阿里云OSS_准备工作
|
5月前
|
对象存储
大事件后端项目32--------文件上传_阿里云OSS_程序集成
大事件后端项目32--------文件上传_阿里云OSS_程序集成
|
6月前
|
安全 网络安全 开发工具
对象存储oss使用问题之flutter使用http库进行post请求文件上传返回400如何解决
《对象存储OSS操作报错合集》精选了用户在使用阿里云对象存储服务(OSS)过程中出现的各种常见及疑难报错情况,包括但不限于权限问题、上传下载异常、Bucket配置错误、网络连接问题、跨域资源共享(CORS)设定错误、数据一致性问题以及API调用失败等场景。为用户降低故障排查时间,确保OSS服务的稳定运行与高效利用。
274 1
|
6月前
|
运维 编译器 API
对象存储oss使用问题之进行文件上传时报错java.io.EOFException如何解决
《对象存储OSS操作报错合集》精选了用户在使用阿里云对象存储服务(OSS)过程中出现的各种常见及疑难报错情况,包括但不限于权限问题、上传下载异常、Bucket配置错误、网络连接问题、跨域资源共享(CORS)设定错误、数据一致性问题以及API调用失败等场景。为用户降低故障排查时间,确保OSS服务的稳定运行与高效利用。
294 0
|
6月前
|
开发工具 对象存储
阿里云OSS文件上传
阿里云OSS文件上传
164 0
|
1月前
|
网络协议 测试技术 网络安全
Python编程-Socket网络编程
Python编程-Socket网络编程
|
4月前
|
网络协议 开发者 Python
深度探索Python Socket编程:从理论到实践,进阶篇带你领略网络编程的魅力!
【7月更文挑战第25天】在网络编程中, Python Socket编程因灵活性强而广受青睐。本文采用问答形式深入探讨其进阶技巧。**问题一**: Socket编程基于TCP/IP,通过创建Socket对象实现通信,支持客户端和服务器间的数据交换。**问题二**: 提升并发处理能力的方法包括多线程(适用于I/O密集型任务)、多进程(绕过GIL限制)和异步IO(asyncio)。**问题三**: 提供了一个使用asyncio库实现的异步Socket服务器示例,展示如何接收及响应客户端消息。通过这些内容,希望能激发读者对网络编程的兴趣并引导进一步探索。
56 4
|
4月前
|
开发者 Python
Python Socket编程:不只是基础,更有进阶秘籍,让你的网络应用飞起来!
【7月更文挑战第25天】在网络应用蓬勃发展的数字时代,Python凭借其简洁的语法和强大的库支持成为开发高效应用的首选。本文通过实时聊天室案例,介绍了Python Socket编程的基础与进阶技巧,包括服务器与客户端的建立、数据交换等基础篇内容,以及使用多线程和异步IO提升性能的进阶篇。基础示例展示了服务器端监听连接请求、接收转发消息,客户端连接服务器并收发消息的过程。进阶部分讨论了如何利用Python的`threading`模块和`asyncio`库来处理多客户端连接,提高应用的并发处理能力和响应速度。掌握这些技能,能使开发者在网络编程领域更加游刃有余,构建出高性能的应用程序。
34 3

热门文章

最新文章

相关产品

  • 对象存储
  • 下一篇
    无影云桌面