tencentcloud / tencentcloud-sdk-java Goto Github PK
View Code? Open in Web Editor NEWTencent Cloud API 3.0 SDK for Java
License: Apache License 2.0
Tencent Cloud API 3.0 SDK for Java
License: Apache License 2.0
sdk是否支持双螺旋添加快照盘,大概看了一下源码暂时么有找到双螺旋模块,目前版本(qcloud-java-sdk:2.0.6)是否支持?
使用SDK调用TextProcess接口,返回回答的内容一直是 “对不起,我不明白你的意思”
查看返回的响应内容,InputText为乱码。
{"DialogStatus":"","BotName":"","IntentName":"","SlotInfoList":[],"InputText":"??????","ResponseMessage":{"GroupList":[{"ContentType":"text/plain","Url":"","Content":"对不起,我不明白你的意思。"}]},"SessionAttributes":"","ResultType":"5","RequestId":"d9c49373-8908-4623-b2e3-9aeb210f87f3"}
直接将SDK代码添加到工程
在doRequestWithTC3方法中,修改sdk代码,获取requestPayload时,设置为utf-8之后乱码问题可以得到解决
requestPayload = AbstractModel.toJsonString(request).getBytes("utf-8");
不清楚这个是不是SDK代码需要修改,还是说Tomcat服务器需要做一些什么额外的配置。
我们公司有使用腾讯的VOD服务,但是当前这个repo太大了,我们只需要VOD的SDK,但不得不引入整个sdk包,否则只能自己单独删减打包,后续能否单独拆分?
另外,我们也使用“云通讯”服务,可是苦于没找到对应的SDK,我们自己按照自己的需求开发了一部分功能,我们的的TIM SDK(后来在当前repo下发现了一个叫cim。。)全称"TIMJava"由于项目需求和人手不足,只开发了三个功能模块,希望后续可以继续维护,也希望可以得到一些官方的支持。
并且云通讯的社区貌似并不活跃,这个不应该是腾讯开放平台最有能力和最核心的服务吗,但是总觉得一些不足,比如后台不能可视化管理用户以及聊天和关系信息等等,希望可以加强这一服务
in some users environment, the java cert is not installed correctly, they might encounter the problem of:
sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
an sample java version:
java version "1.8.0_51"
Java(TM) SE Runtime Environment (build 1.8.0_51-b16)
Java HotSpot(TM) 64-Bit Server VM (build 25.51-b03, mixed mode)
we should document this and provide some info for these users
Caused by: java.lang.ClassNotFoundException: Didn't find class "org.apache.xerces.jaxp.datatype.DatatypeFactoryImpl" on path: DexPathList
我用的是:
implementation 'com.tencentcloudapi:tencentcloud-sdk-java:3.0.31' 这个版本,还需要加什么依赖吗?
Hi, the maven dependency info in README.md is too old. The 3.0.1 version is behind your release, for example it doesn't contain the aai module. Please update it.
参数 Name | 否 | String | 姓名。最长长度32位。中文请使用UTF-8编码。
这里使用UTF-8编码,win10环境,tomcat 设置了 URIEncoding="UTF-8",开发环境设置了 UTF-8,编码时一直,奇数个中文会乱码,偶数个中文不会乱码 ,腾讯对接的几个原厂工程师问了一遍都没有解决,希望这里采用其他方式加密
ms resourceinfo ExpireTime
如题
使用人脸识别SDK时发现创建人员库接口中文乱码,出现问题的版本为
<dependency>
<groupId>com.tencentcloudapi</groupId>
<artifactId>tencentcloud-sdk-java</artifactId>
<version>3.0.111</version>
</dependency>
出现问题的示例代码如下:
Credential cred = new Credential("secretId", "secretKey"); // 执行时替换为真实的秘钥
IaiClient iaiClient = new IaiClient(cred, "ap-shanghai");
String str = "China**";
byte[] b = str.getBytes(StandardCharsets.UTF_8);
// 这里打印出[67, 104, 105, 110, 97, -28, -72, -83, -27, -101, -67],确实是“China**”的UTF-8编码
System.out.println(Arrays.toString(b));
String[] desc = new String[]{"test"};
CreateGroupRequest createGroupRequest = new CreateGroupRequest();
createGroupRequest.setFaceModelVersion("3.0");
createGroupRequest.setGroupExDescriptions(desc);
createGroupRequest.setGroupId("test_test-test");
createGroupRequest.setGroupName(new String(b, StandardCharsets.UTF_8)); // 将GroupName赋为中文字符串
createGroupRequest.setTag("ThisIsATag");
CreateGroupResponse createGroupResponse = iaiClient.CreateGroup(createGroupRequest);
com.tencentcloudapi.vpc.v20170312.models.Address.getAddressState() always return null.
From JSON response, field AddressState
should be serialized as AddressStatus
{
"Response": {
"TotalCount": 7,
"AddressSet": [
{
"AddressId": "eip-96p3csg5",
"AddressName": null,
"AddressIp": "140.143.31.90",
"AddressStatus": "UNBIND",
"AddressType": "EIP",
"InstanceId": null,
"NetworkInterfaceId": null,
"PrivateAddressIp": null,
"IsArrears": false,
"IsBlocked": false,
"IsEipDirectConnection": false,
"CreatedTime": "2018-05-11T16:01:51Z"
},
......
],
"RequestId": "3199c8ba-731f-4369-b95b-808c2d57f177"
}
}
为什么票据id,验证过一次之后,可以重复校验
多次使用同一个票据id,都可以校验成功,这样是不是有问题
cms.tencentcloudapi.com 相关接口还没有吗?
Java9开始,默认不再加载JAXB,javax.xml.bind默认不再可用。而你们的pom的dependency里又没有加上jaxb的依赖,导致Runtime类加载异常。
以下是部分堆栈。
java.lang.ClassNotFoundException: javax.xml.bind.DatatypeConverter
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:582) ~[na:na]
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:190) ~[na:na]
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:499) ~[na:na]
at com.tencentcloudapi.common.Sign.sign(Sign.java:53) ~[tencentcloud-sdk-java-3.0.1.jar:na]
VodClient怎么上传视频呢, 方法找完了都没找到
建议README 这里稍微更新一下版本吧 或者标注一个 {version} 也好吧
[TencentCloudSDKException]message:InternalError.SendAndRecvFail-send and recv sso package fail requestId:6260e7fa-8fbf-4002-a40e-a0dc4d5b43c8
at com.tencentcloudapi.common.AbstractClient.internalRequest(AbstractClient.java:328)
at com.tencentcloudapi.sms.v20190711.SmsClient.SendSms(SmsClient.java:136)
at com.tencentcloudapi.sms.App.main(App.java:52)
请问 3.0.45 release 版本中 TencentCloudSDKException 中的 getErrorCode 方法为什么注释掉?
[TencentCloudSDKException]message:java.lang.IllegalStateException: Expected BEGIN_ARRAY but was STRING at line 17 column 30 requestId:
at com.tencentcloudapi.cvm.v20170312.CvmClient.DescribeImages(CvmClient.java:250)
at cn.cloudbest.iclouds.qcloud.service.impl.QcloudImageServiceImpl.listImages(QcloudImageServiceImpl.java:25)
at cn.cloudbest.iclouds.qcloud.compute.DescribeImageTest.images(DescribeImageTest.java:15)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:86)
at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:459)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:678)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)
[TencentCloudSDKException]message:java.lang.NumberFormatException: Expected an int but was 2189447945 at line 1 column 182 path $.Response.Devices[0].ConnIP
requestId:
at com.tencentcloudapi.iotcloud.v20180614.IotcloudClient.DescribeDevices(IotcloudClient.java:208)
问题:
可能是代理的干扰导致接收的 HTTP response header 里都转成小写了(见截图 ),cos sdk 里没有兼容小写情况导致报错
实际上,HTTP headers 是大小写不敏感的,参考:https://stackoverflow.com/questions/5258977/are-http-headers-case-sensitive
应该建立一个enum,来表示各种区域。
比如Region.Guangzhou、Region.Shanghai,而不是让用户去翻文档查到“广州”的Region是“ap-guangzhou”。
[TencentCloudSDKException]message:FailedOperation.UploadDataError-账户无实例或未开通催收机器人!
传任何实例规格,均返回 0.25的价格;
应该是一个 BUG ,不知道是你们的,还是用的 request 框架的。
总之,如果把 URL 中的汉字部分给 URLEncode 一下就可以了
md里面写着这样设置代理
HttpProfile httpProfile = new HttpProfile();
httpProfile.setEndpoint("cvm.tencentcloudapi.com");
httpProfile.setProxyHost("真实代理ip");
httpProfile.setProxyPort(真实代理端口);
实际上压根找不到这个方法?
我看源码都有,依赖怎么没有呢
java.lang.NullPointerException
Attempt to invoke interface method 'java.lang.String java.lang.CharSequence.toString()' on a null object reference
解析原始
1 com.tencent.qcloud.logutils.LogServer.onActivityStarted(LogServer.java:58)
2 android.app.Application.dispatchActivityStarted(Application.java:211)
3 android.app.Activity.onStart(Activity.java:1252)
4 android.support.v4.app.FragmentActivity.onStart(FragmentActivity.java:614)
5 android.support.v7.app.AppCompatActivity.onStart(AppCompatActivity.java:178)
6 android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1337)
7 android.app.Activity.performStart(Activity.java:7080)
8 android.app.Activity.performRestart(Activity.java:7155)
9 android.app.ActivityThread.handleWindowVisibility(ActivityThread.java:4161)
10 android.app.ActivityThread.-wrap29(Unknown Source)
11 android.app.ActivityThread$H.handleMessage(ActivityThread.java:1634)
12 android.os.Handler.dispatchMessage(Handler.java:106)
13 android.os.Looper.loop(Looper.java:164)
14 android.app.ActivityThread.main(ActivityThread.java:6530)
15 java.lang.reflect.Method.invoke(Native Method)
16 com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:444)
17 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:812)
GetMonitorDataRequest类里有定义:
@SerializedName("Instances")
@expose
private Instance[] Instances;
在 api 里:
dimensions.0.name=diskId
dimensions.0.value为块存储ID
最新的 java sdk 里获取监控数据的请求类是否还不支持除了云服务器外的其他监控?
我能否在多线程环境下共用一个client
Could you please supply an example for speech recognition?
I tried to call this api with an mp3 file input encoded with base64, but failed.
Here is my error info:
[TencentCloudSDKException]message:InternalError-An internal error has occurred. Retry your request, but if the problem persists, contact us.
And my code:
private String toBase64(String filePath) {
try {
File file = new File(filePath);
byte[] bytesArray = new byte[(int) file.length()];
//read file into bytes[]
FileInputStream fileInputStream = new FileInputStream(file);
fileInputStream.read(bytesArray);
return Base64.encode(bytesArray);
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return "";
}
private String callASR(){
Credential cred = new Credential(secretId, secretKey);
AaiClient client=new AaiClient(cred,"ap-beijing");
SentenceRecognitionRequest req=new SentenceRecognitionRequest();
req.setProjectId(0);
req.setEngSerViceType("8k");
req.setSubServiceType(2);
req.setUsrAudioKey("sdk");
req.setSourceType(1);
req.setVoiceFormat("mp3");
req.setData(toBase64("data/fengtian.mp3"));
req.setDataLen(req.getData().length());
SentenceRecognitionResponse resp= null;
try {
resp = client.SentenceRecognition(req);
} catch (TencentCloudSDKException e) {
e.printStackTrace();
}
// 输出json格式的字符串回包
String res=SentenceRecognitionResponse.toJsonString(resp);
System.out.println(res);
return res;
}
日否可以增加日志的支持,现在没日志,不大友好
上传文件(base64之后)大小为15MB,上传失败,返回的消息说需要 TC3-HMAC-SHA256 签名
目前SDK支持这种签名了么?
设置签名方法为TC3-HMAC-SHA256,报告
TencentCloudSDKException]message:Algorithm TC3-HMAC-SHA256 not available
调用CreateLiveRecordRule这个方法,模板规则已存在的情况下为什么返回的Code是InternalError?请检查下,感觉返回InternalError不太友好。
RequestId:b36a1e14-0764-48ac-8f9a-7f9cdbd0d6e0
vod没有发布到maven吗?
版本:3.0.57
接口:查询设备详情,iotCloud.DescribeDevice(request);
错误: .common.exception.TencentCloudSDKException: java.lang.NumberFormatException:Expected an int but was 2531608329 at line 1 column 1399 path $.Response.ConnIP
原因:问题是 ConnIP的数值超过了 Integer.MAX_VALUE
IotClient 类的AddDevice(AddDeviceRequest req) 方法第83行:rsp = gson.fromJson(this.internalRequest(req, "AddDevice"), type); 在(this.internalRequest(req, "AddDevice")已经正常返回结果的情况下报:
[TencentCloudSDKException]message:java.lang.IllegalStateException: Expected BEGIN_OBJECT but was STRING at line 1 column 220 requestId:
at com.tencentcloudapi.iot.v20180123.IotClient.AddDevice(IotClient.java:85)
文档中要求必填region
RTjava.lang.Error: javax.xml.datatype.DatatypeConfigurationException: Provider org.apache.xerces.jaxp.datatype.DatatypeFactoryImpl not found
at javax.xml.bind.DatatypeConverterImpl.(DatatypeConverterImpl.java:907)
at javax.xml.bind.DatatypeConverter.initConverter(DatatypeConverter.java:155)
at javax.xml.bind.DatatypeConverter.printHexBinary(DatatypeConverter.java:640)
at com.tencentcloudapi.common.Sign.sha256Hex(Sign.java:107)
at com.tencentcloudapi.common.AbstractClient.doRequestWithTC3(AbstractClient.java:355)
at com.tencentcloudapi.common.AbstractClient.internalRequest(AbstractClient.java:267)
at com.tencentcloudapi.ocr.v20181119.OcrClient.BizLicenseOCR(OcrClient.java:98)
at com.yinet.ocr.BuLicenActivity.onActivityResult(BuLicenActivity.java:85)
at android.app.Activity.dispatchActivityResult(Activity.java:6192)
at android.app.ActivityThread.deliverResults(ActivityThread.java:3575)
at android.app.ActivityThread.handleSendResult(ActivityThread.java:3622)
at android.app.ActivityThread.access$1300(ActivityThread.java:153)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1354)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5293)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)
Caused by: javax.xml.datatype.DatatypeConfigurationException: Provider org.apache.xerces.jaxp.datatype.DatatypeFactoryImpl not found
at javax.xml.datatype.DatatypeFactory.newInstance(DatatypeFactory.java:106)
at javax.xml.bind.DatatypeConverterImpl.(DatatypeConverterImpl.java:905)
at javax.xml.bind.DatatypeConverter.initConverter(DatatypeConverter.java:155)
at javax.xml.bind.DatatypeConverter.printHexBinary(DatatypeConverter.java:640)
at com.tencentcloudapi.common.Sign.sha256Hex(Sign.java:107)
at com.tencentcloudapi.common.AbstractClient.doRequestWithTC3(AbstractClient.java:355)
at com.tencentcloudapi.common.AbstractClient.internalRequest(AbstractClient.java:267)
at com.tencentcloudapi.ocr.v20181119.OcrClient.BizLicenseOCR(OcrClient.java:98)
at com.yinet.ocr.BuLicenActivity.onActivityResult(BuLicenActivity.java:85)
at android.app.Activity.dispatchActivityResult(Activity.java:6192)
at android.app.ActivityThread.deliverResults(ActivityThread.java:3575)
at android.app.ActivityThread.handleSendResult(ActivityThread.java:3622)
at android.app.ActivityThread.access$1300(ActivityThread.java:153)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1354)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5293)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)
Caused by: java.lang.ClassNotFoundException: Didn't find class "org.apache.xerces.jaxp.datatype.DatatypeFactoryImpl" on path: DexPathList[[zip file "/data/app/com.yinet.ocr-2/base.apk"],nativeLibraryDirectories=[/data/app/com.yinet.ocr-2/lib/x86, /vendor/lib, /system/lib]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
at javax.xml.datatype.FactoryFinder.newInstance(FactoryFinder.java:138)
at javax.xml.datatype.FactoryFinder.find(FactoryFinder.java:219)
at javax.xml.datatype.DatatypeFactory.newInstance(DatatypeFactory.java:99)
at javax.xml.bind.DatatypeConverterImpl.(DatatypeConverterImpl.java:905)
at javax.xml.bind.DatatypeConverter.initConverter(DatatypeConverter.java:155)
at javax.xml.bind.DatatypeConverter.printHexBinary(DatatypeConverter.java:640)
at com.tencentcloudapi.common.Sign.sha256Hex(Sign.java:107)
at com.tencentcloudapi.common.AbstractClient.doRequestWithTC3(AbstractClient.java:355)
at com.tencentcloudapi.common.AbstractClient.internalRequest(AbstractClient.java:267)
at com.tencentcloudapi.ocr.v20181119.OcrClient.BizLicenseOCR(OcrClient.java:98)
at com.yinet.ocr.BuLicenActivity.onActivityResult(BuLicenActivity.java:85)
at android.app.Activity.dispatchActivityResult(Activity.java:6192)
at android.app.ActivityThread.deliverResults(ActivityThread.java:3575)
at android.app.ActivityThread.handleSendResult(ActivityThread.java:3622)
at android.app.ActivityThread.access$1300(ActivityThread.java:153)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1354)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5293)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)
Suppressed: java.lang.ClassNotFoundException: org.apache.xerces.jaxp.datatype.DatatypeFactoryImpl
at java.lang.Class.classForName(Native Method)
at java.lang.BootClassLoader.findClass(ClassLoader.java:781)
at java.lang.BootClassLoader.loadClass(ClassLoader.java:841)
at java.lang.ClassLoader.loadClass(ClassLoader.java:504)
... 24 more
Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack available
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.