-
(1)请问一次OBS返回的报文默认大小是多少,例如一次请求32MB,会分几次返回。(2)这个大小取决于什么,HTTP/HTTPS协议限制还是OBS参数设置。
-
基于Windows编译OBS C SDK指南背景在Windows下使用OBS C SDK(v3.22.7及之后,v3.22.7之前的版本跳转到后半部分),希望编译成DLL动态链接库文件供工程使用。编译C SDK基于visual studio进行编译;此处基于visual studio2017进行编译作为示例;1、打开编译工程进行编译打开visual studio 2017,选择File->Open->Project/Solution打开源代码目录下的编译工程(目录:"your-sdk-path\source\eSDK_OBS_API\eSDK_OBS_API_C++\sln\vc100\obs.sln"),然后直接编译。常见问题:1、esdklogapi.h(194): error C3872: “0xe58b”: 此字符不允许在标识符中使用 error C2143: 语法错误: 缺少“;”(在“*”的前面)“in”: 未声明的标识符“0x2033”: 此字符不允许在标识符中使用解决方法:报错的对应文件转换下换行符为CRLF即可解决改问题2、无法打开输入文件“libeay32.lib”解决方法:于链接器中删除 libeay32.lib ssleay32.lib增加 对应包含目录下的库,例如(libssl.lib、libcrypto.lib)编译C SDK Demo1、打开测试工程打开visual studio,选择File->Open->Project/Solution打开源代码目录下的测试工程(测试工程目录:"your-sdk-path\source\eSDK_OBS_API\eSDK_OBS_API_C++_Demo\sln\obs_demo.sln");选择对应的发布版本及平台如果出现与编译时类似的提示是否升级项目的编译器时,点击确定,如果不小心点击取消则需要点击项目->重定向项目->确定。2、编译测试工程之前建议先完成下方常见问题a、b选择Build->Rebuild编译测试工程;常见问题:a. 如果出现如下错误,表明未在当前工程路径下找到对应的lib文件,请将上一步中编译得到的libeSDKOBS.lib、libeSDKOBS.dll及huaweisecurec.lib、huaweisecurec.dll复制到测试工程目录下("your-sdk-path\source\eSDK_OBS_API\eSDK_OBS_API_C++_Demo\sln\")再重新执行编译;b.编译成功,运行时提示找不到xxx.dll除了问题a中提到的dll外,还需要:your-sdk-path\source\eSDK_OBS_API\eSDK_OBS_API_C++\bin\win64_x64_msvc\release(32位是your-sdk-path\source\eSDK_OBS_API\eSDK_OBS_API_C++\bin\win32_x86_msvc\release)下的所有dllplatform\eSDK_LogAPI_V2.1.10\C\release_x64(32位是platform\eSDK_LogAPI_V2.1.10\C\release)下所有dllc.执行了a、b问题中的步骤,为啥还是有运行的异常弹窗?这种情况下请确认a、b步骤中使用的所有dll是否对应相同的架构(win32_x86或win64_x64)v3.22.7前参考下面的编译指南背景在Windows下使用OBS C SDK,希望编译成DLL动态链接库文件供工程使用。原帖OBS C SDK基于Windows进行编译_对象存储服务_存储服务_华为云论坛 (huaweicloud.com) ,存在些许纰漏,基于该贴修复了一些不明确的步骤。编译C SDK基于visual studio进行编译;此处基于visual studio2017进行编译作为示例;1、打开编译工程打开visual studio 2017,选择File->Open->Project/Solution打开源代码目录下的编译工程(目录:"your-sdk-path\source\eSDK_OBS_API\eSDK_OBS_API_C++\sln\vc100\obs.sln"),打开工程时如果出现如下提示是否升级项目的编译器及依赖库时,选择Cancel(表示依赖VS2010编译工具进行编译,如果本地未安装过VS2010,请参考常见问题中的解决方案,然后编译);2、编译工程选择Build->Rebuild重新编译工程;出现如下提示代表工程编译成功;编译产物见目录:"your-sdk-path\source\eSDK_OBS_API\eSDK_OBS_API_C++\build\vc100\Release"常见问题:a. 提示缺少VS2010 VC100工具集出现该问题的原因是该工程默认采用VS2010工具集进行编译,如果本地环境中未安装过VS2010时将会提示该问题;以visual studio2017版本为例展示该问题解决方案:1、在工程上右键选择重定向项目(不仅是图中的项目,huaweisecurec项目也需要此操作)2、重定向项目至指定平台工具集及SDK版本(以VS2017为例,平台工具集版本为V141)3、替换“your-sdk-path\source\eSDK_OBS_API\eSDK_OBS_API_C++\lib\win64_x64_msvc\release”目录下的libxml2.lib文件为附件(可到原帖中下载)中的libxml2.lib及libxml2.dll文件,否则在高版本VS中编译会提示该依赖库为低版本VS中编译,导致工程编译失败;4、选择右边的发布版本及平台,然后右键obs工程->属性->链接器->输入->附加依赖项-><编辑>在列表中最后一行添加cjson.lib后点击确定完成这些步骤后重新编译工程即可;测试C SDK方式一:直接使用提供的测试工程1、打开测试工程打开visual studio,选择File->Open->Project/Solution打开源代码目录下的测试工程(测试工程目录:"your-sdk-path\source\eSDK_OBS_API\eSDK_OBS_API_C++\build\obs\demo\sln\obs_demo.sln");选择对应的发布版本及平台如果出现与编译时类似的提示是否升级项目的编译器及依赖库且没有安装vs2010时,点击确定,如果不小心点击取消则需要点击项目->重定向项目->确定。2、编译测试工程之前建议先完成下方常见问题a、b选择Build->Rebuild编译测试工程;常见问题:a. 如果出现如下错误,表明未在当前工程路径下找到对应的lib文件,请将上一步中编译得到的libeSDKOBS.lib、libeSDKOBS.dll及huaweisecurec.lib、huaweisecurec.dll复制到测试工程目录下("your-sdk-path\source\eSDK_OBS_API\eSDK_OBS_API_C++\build\obs\demo\sln")再重新执行编译;b. 编译过程中出现如下错误时需修改工程配置选项;右键单击工程Properties->Linker->Command Line Additional Options,添加/SAFESEH:NO ;输出如下结果时代表编译测试工程成功,但是仍缺失部分dll,拷贝 “your-sdk-path\\source\eSDK_OBS_API\eSDK_OBS_API_C++\bin\win64_x64_msvc\release”文件夹和“your-sdk-path\platform\eSDK_LogAPI_V2.1.10\C\release_x64”文件夹下的所有dll文件以及原帖附件中提供的libxml2.dll到测试工程目录下("your-sdk-path\source\eSDK_OBS_API\eSDK_OBS_API_C++\build\obs\demo\sln"),之后可以根据实际需要配置测试工程中的ACCESS_KEY_ID(对应AK)、SECRET_ACCESS_KEY(对应SK)、HOST_NAME(对应EndPoint)等信息来调用相关接口进行测试;c. 在高版本VS中运行时出现提示“无法从const char* 转换为char*”;出现该问题时,可以通过设置Properties->C/C++->Language->Conformance mode(符合模式)为否来解决;注意:如果在编译SDK工程时采用了高版本VS进行编译,同时用附件中的libxml2替换了原路径下的libxml2.lib文件,则还需要将libxml2.dll文件添加到工程源文件目录下;libxml2.dll->"your-sdk-path\source\eSDK_OBS_API\eSDK_OBS_API_C++\bin\win64_x64_msvc\release\libxml2.dll"添加完依赖库目录后编译运行即可执行测试工程;常见问题a. 提示缺少MSVCR100.dll文件;原因是当前系统上缺少低版本运行库文件MSVCR100.dll,下载到该文件并放于系统C:\Windows\System32或C:\Windows\SysWOW64目录下即可;对于高版本Visual studio,新建测试工程并引入SDK动态链接库的方法与VS2015基本一致。附件libxml2可到原帖中下载
yd_264107108
发表于2022-09-15 12:56:46
2022-09-15 12:56:46
最后回复
yd_298600240
2025-02-27 15:32:09
1346 2 -
如下图所示,官方文档里显示支持attname但是实际源代码里没有这个属性导致实际用sdk生成的签名里不包含attname属性,一访问生成的签名地址就会提示参数对不上,麻烦问下怎么解决。另外auth type升到V4就走了另外一套逻辑,生成的带attname 签名地址倒是可用,但是参数会多一大截,目前不想升到v4,求解决方法,谢谢
-
obsClient.putObject(obsBucketName, sb.toString(), inputStream);使用obs上传文件时,文件已经上传成功,可以根据路径访问到 但是使用如下代码查看桶下面的对象时 却看不到上传成功的对象ObjectListing objectListing = obsClient.listObjects(obsBucketName); for (ObsObject obsObject : objectListing.getObjects()) { System.out.println(" - " + obsObject.getObjectKey() + " " + "(size = " + obsObject.getMetadata().getContentLength() + ")"); }求遇到相同问题的回复一下 谢谢
-
obsClient.putObject("XX", "objectkey", new File("C:\\Users\\Administrator\\Desktop\\test.pdf"));objectkey 的值要怎么获取? 我随便输入一个报错了
-
问题场景:专有云(局域网)、公有云(通互联网)1、我的后端服务在专有云上部署,需要调用SDK访问obs服务端,而obs与公有云相通,与专有云不通;查看华为云官网,找到通过配置http代理可以解决,但是我这边试过通过配置http代理到公有云访问obs,但是都不成功。求助大佬怎么解决?
-
向OBS服务端请求getobject报错,但是没有返回错误码,无从排查,求大佬指点,报错如下图
-
BrowserJS 上传时如何中止上传,有时候文件比较大,中途不想上传了,如何中止上传?
-
com.obs.services.exception.ObsException: Error message:Request Error.OBS servcie Error Message. -- ResponseCode: 403, ResponseStatus: Forbidden, XML Error Message: AccessDeniedAccess Denied/dlife6ukc/objectname27e383a07-900c-459a-9172-2a2351007dee403同一个APP,安装在手机上可以上传成功,安装是车机上面在上传到100%时,提示失败! 报错信息如上
-
使用npm安装 varvar ObsClient = require('esdk-obs-nodejs')启动报错: ERROR Failed to compile with 2 errors 18:43:40 error in ./node_modules/log4js/lib/categories.js Module parse failed: Unexpected token (184:6) You may need an appropriate loader to handle this file type. | debug(`configForCategory: ${category} has hierarchy, cloning from parents`); | sourceCategoryConfig = { | ...configForCategory(category.slice(0, category.lastIndexOf('.'))), | }; | } else { @ ./node_modules/log4js/lib/log4js.js 28:19-42 @ ./node_modules/esdk-obs-nodejs/lib/log.js @ ./node_modules/esdk-obs-nodejs/lib/obs.js @ ./src/util/oss/ossClient.js @ ./src/store/modules/filesystem.js @ ./src/store/index.js @ ./src/main.js
-
下面这张图是上传完成的,我的理解已上传的字节数应该是所有已上传的总数。上面那个图中有一条数据错误,导致我计算进度提前变成了百分百
匿名用户
发表于2022-08-19 17:58:01
2022-08-19 17:58:01
最后回复
匿名用户
2022-08-19 17:58:01
93 0 -
在编译 obs-demo 时 出现 链接不使用 /SAFESEH
-
目前有个需求在微信小程序拍摄或选择照片后直传到华为云然后根据返回的key在显示图片,但是在网上找了发现没什么例子,还在这里请教一下有没有哪位大佬做过相关例子的,目前是通过uniapp开发的小程序
-
采用封装SDK对外提供接口,再做压力测试时出现NoSuchUploadThe specified upload does not exist. The upload ID may be invalid, or the upload may have been aborted or completed.**********************没做压力测试时,未出现此现象
-
【功能模块】obs对象存储,并行文件系统【操作步骤&问题现象】1、将mongdb的数据路径放在并行文件系统中2、启动mongodb,日志的预加载文件写入速度每秒128K,有没有办法提速。我知道obs不适合数据库这类零碎文件存储,但想试试看。【截图信息】【日志信息】(可选,上传日志内容或者附件)
上滑加载中
推荐直播
-
华为云码道Agent集成与鸿蒙实战2026/08/11 周二 19:00-21:00
王一男-华为云码道产品规划专家;李炎-华为云码道产品专家;彭江敏-华为云鸿蒙端云一体化开发专家
本次直播带你解读华为云码道7月份产品新特性、新功能。更有专家演示码道Agent Space × 钉钉机器集成实战,从0到1打通消息通道;码道鸿蒙端云一体化实战,快速搭建员工签到系统。
回顾中 -
华为云开发者AI素养直播课·第三期2026/08/21 周五 16:00-18:00
林华鼎-华为云AI开发者运营负责人;念擎-华为云AI开发者运营案例开发专家
本期直播内容:AI六层能力首次详细解读 + 新一代华为云开发者空间亮相 + 校园案例直播带练
回顾中
热门标签