当前位置: 首页 > news >正文

延安市网站建设_网站建设公司_轮播图_seo优化

广东网站建设怎么收费,中交建设集团天津公司网站,广告公司怎么取名字,自己做鞋子网站OpenFeign是一种声明式的Web服务客户端#xff0c;它使得编写HTTP客户端变得更加简单和直观。它使用了注解方式来描述HTTP API#xff0c;使得开发者可以使用Java接口来调用远程HTTP服务。 OpenFeign的核心特点包括#xff1a; 声明式API: 您可以使用注解声明要调用的远程AP… OpenFeign是一种声明式的Web服务客户端它使得编写HTTP客户端变得更加简单和直观。它使用了注解方式来描述HTTP API使得开发者可以使用Java接口来调用远程HTTP服务。 OpenFeign的核心特点包括 声明式API: 您可以使用注解声明要调用的远程API然后使用Java接口调用它们。 定制化接口: 您可以使用FeignBuilder类定制客户端接口的行为。 支持编码器和解码器: Feign支持多种编码器和解码器可以将请求和响应转换为Java对象。 支持请求和响应压缩: OpenFeign支持gzip和deflate压缩算法。 支持负载均衡: OpenFeign可以与负载均衡组件如Ribbon一起使用以实现服务调用的负载均衡。 总之OpenFeign是一个方便易用的Web服务客户端可以帮助开发者快速、灵活地调用远程HTTP服务。 业务场景获取下游服务的文件下载流然后上传到minio获取分享链接  场景复现 代码 rpc类 FeignClient(url ip:port, name infer) public interface InferRpcService {GetMapping(value /download, consumes MediaType.APPLICATION_OCTET_STREAM_VALUE)Response download(RequestParam(text) String text); } 调用类 Slf4j Service public class InferServiceImpl implements InferService {Resourceprivate InferRpcService inferRpcService;Resourceprivate MinioClient minioClient;Overridepublic CommonResponseString tts(InferRequest inferRequest, HttpServletResponse response) {if (!CollectionUtils.isEmpty(userRecords) Objects.nonNull(inferRequest) StringUtils.isNoneEmpty(inferRequest.getText())) {try {Response transferred inferRpcService.transferString(inferRequest.getText());Response.Body body transferred.body();if (Objects.nonNull(body) !body.isRepeatable()) {record.setTtsStatus(InferStatusConstant.SYNTHESIS_SUCCESSFUL);InputStream in body.asInputStream();String filename UUID.randomUUID().toString().replaceAll(-,); String sharedWavUrl MinioUtils.uploadFile(minioClient, in, MinioConstant.VITS_BUCKET, allFilename);record.setSharedWavUrl(sharedWavUrl);return CommonResponse.ok(sharedWavUrl);}} catch (IOException e) {throw new RuntimeException(e);}}return CommonResponse.error(合成失败);} } 工具类 Slf4j public class MinioUtils {public static String uploadFile(MinioClient minioClient, InputStream inputStream, String bucket, String filename) {try {log.info(返回的字节流大小: {},inputStream.available());boolean found minioClient.bucketExists(BucketExistsArgs.builder().bucket(public).build());if (!found) {minioClient.makeBucket(MakeBucketArgs.builder().bucket(public).build());}ObjectWriteResponse response minioClient.putObject(PutObjectArgs.builder().bucket(bucket).object(filename).stream(inputStream, inputStream.available(), -1).contentType(InferStatusConstant.WAV_CONTENT_TYPE).build());String url minioClient.getPresignedObjectUrl(GetPresignedObjectUrlArgs.builder().bucket(bucket).expiry(7 * 24 * 60 * 60).object(filename).method(Method.GET).build());log.info(分享地址 url);return url;} catch (ErrorResponseException | InsufficientDataException | InternalException | InvalidKeyException |InvalidResponseException | IOException | NoSuchAlgorithmException | ServerException |XmlParserException e) {throw new RuntimeException(e);}} } 现象 比如获取下又服务的音频的时候会出现不完整的情况我这边的现象是只有前五秒的音频 解决 借助restTemplate 代码 Configuration public class RestTemplateConfiguration {Beanpublic RestTemplate restTemplate(RestTemplateBuilder restTemplateBuilder) {RestTemplate restTemplate restTemplateBuilder.build();return restTemplate;} } public CommonResponseString download(InferRequest inferRequest, HttpServletResponse response, int a) {String url you_url;ResponseEntitybyte[] responseEntity restTemplate.exchange(url, HttpMethod.GET, null,byte[].class);byte[] bytes responseEntity.getBody();if (!ArrayUtils.isEmpty(bytes)) {record.setTtsStatus(InferStatusConstant.SYNTHESIS_SUCCESSFUL);String filename UUID.randomUUID().toString().replaceAll(-, );String allFilename / openId / filename MinioConstant.WAV_SUFFIX;String sharedWavUrl MinioUtils.uploadFile(minioClient, new ByteArrayInputStream(bytes), MinioConstant.VITS_BUCKET, allFilename);return CommonResponse.ok(sharedWavUrl);return CommonResponse.error(失败);} 下载没有问题
http://www.ihoyoo.com/news/142785.html

相关文章:

  • 网站的首页文案电影网站建设方案ppt
  • 番禺制作网站设计做音乐网站赚钱吗
  • pc端移动端网站开发郑州网络推广免费平台
  • 查找网站承德建设局网站
  • 莆田网站建设如何建设一个工业品采购网站
  • 四川省建设厅网站为什么打不开长治公司网站建设
  • qq官方网站进入企业英文网站建设
  • c2c网站方案家庭电脑可以做网站吗
  • 自己做平台网站化妆品企业网站建设的策划方案
  • 制作一个自适应网站网页设计教程ui
  • 怀化网站优化公司有哪些自动升级wordpress失败 —— 请再试一次.
  • 什么是网站的层次网站后台管理模板psd
  • 企业做网站要注意些什么问题做网站的怎么赚钱
  • 创客贴网页设计网站权威的南昌网站设计
  • 西安模板做网站ui设计参考网站
  • 怎么做可以聊天的网站烟台网络公司员工人数
  • 金融网站开发文档深圳网站建设怎样容易
  • 中国住房和城乡建设部建造师网站dedecms 调用wordpress
  • 网站上那些轮播图视频怎么做的icp网站建设
  • ci框架建设网站扬州市建设局招标网站
  • 重庆 网站备案吉林省建设项目招标网站
  • 网站建设销售开场白app界面怎么制作的
  • h5微网站开发怎么制作网页支付链接
  • 手机版网站制作应用我在海贼开发app免费
  • 库车网站建设网站建设合同交印花税吗
  • 网站登录验证码不显示紫搜做网站
  • 绵阳做网站的公司有哪些wordpress后台密码
  • 建设网站需要有什么特色桂林北站离阳朔多远
  • 宁波网站建设-中国互联网站语言切换功能如何做
  • 服务器添加网站升级wordpress5.0