java client http请求 返回数据 实时循环监听 url 中资源是否生成

ops/2024/12/19 21:29:29/
http://www.w3.org/2000/svg" style="display: none;">

1、php 中 执行 exec 调用操作系统 命令行 执行 以下 java 代码 生成 的jar
2、php 执行命令是 以上1 需要命令行 输入 参数 taskid
3、实现实时监听 MP3 url 是否生成
4、

java">package com.example.filedemo.controller;import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;import org.json.JSONObject;public class MusicGeneration {public static void main(String[] args) {while (true) {try {String  taskId = "26516638-52fe-4973-9e84-886704c4dab7";URL url = new URL("https://api.openxs.top/suno/fetch/" + taskId);HttpURLConnection connection = (HttpURLConnection) url.openConnection();connection.setRequestMethod("GET");connection.setRequestProperty("Authorization", "your key ");connection.setRequestProperty("Accept", "application/json");connection.setRequestProperty("Content-Type", "application/json");connection.setInstanceFollowRedirects(true);connection.setConnectTimeout(0);connection.setReadTimeout(0);int responseCode = connection.getResponseCode();if (responseCode == HttpURLConnection.HTTP_OK) {BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream()));String inputLine;StringBuilder response = new StringBuilder();while ((inputLine = in.readLine())!= null) {response.append(inputLine);}in.close();if (response.toString().isEmpty()) {// 返回"创建失败"System.out.println("创建失败");} else {JSONObject data = new JSONObject(response.toString());if (data.isNull("data") || data.getJSONObject("data").isNull("status")) {// 处理 status 为空的情况} else if (data.getJSONObject("data").getString("status").equals("SUCCESS")) {// 在这里进行数据库更新操作,此处仅为示例,实际中需要根据你的数据库操作方式进行修改// 假设存在一个方法 updateDatabase 来执行数据库更新操作updateDatabase(taskId, data.getJSONObject("data").getJSONArray("data").getJSONObject(0).getString("audio_url"),"已完成", data.getJSONObject("data").getJSONArray("data").getJSONObject(0).getString("image_url"));break;}}} else {// 处理错误响应System.out.println("请求失败,响应代码: " + responseCode);}connection.disconnect();} catch (Exception e) {e.printStackTrace();}try {Thread.sleep(1000);} catch (InterruptedException e) {e.printStackTrace();}}}public static void updateDatabase(String taskId, String songId, String musicGenerationState, String musicImg) {// 在此处实现数据库更新操作System.out.println("更新数据库: taskId = " + taskId + ", songId = " + songId + ", musicGenerationState = " + musicGenerationState + ", musicImg = " + musicImg);}
}

http://www.ppmy.cn/ops/143288.html

相关文章

Redis bitmaps 使用

应用场景: 记录id为 1 的用户,2024年12月签到情况,并统计; 记录 1号签到 zxys-redis:0>setbit 1:202412 1 1 记录 2号签到 zxys-redis:0>setbit 1:202412 2 1 记录 3号未签到 zxys-redis:0>setbit 1:202412 3 0 …

设计模式之 桥接模式 C# 范例

桥接模式(Bridge Pattern)是一种结构型设计模式,它将抽象与实现解耦,使得两者可以独立变化。桥接模式通常适用于以下情形: 类的功能可以在不同的维度上变化,例如在图形界面开发中,可能有不同的…

C#—BitArray点阵列

C#—BitArray点阵列 在 C# 中,BitArray 类用来管理一个紧凑型的位值数组,数组中的值均为布尔类型,其中 true(1)表示此位为开启,false(0)表示此位为关闭。 当需要存储位&#xff08…

波动理论、传输线和S参数网络

波动理论、传输线和S参数网络 传输线 求解传输线方程 对于传输线模型,我们通常用 R L G C RLGC RLGC 来表示: 其中 R R R 可以表示导体损耗,由于电子流经非理想导体而产生的能量损耗。 G G G 表示介质损耗,由于非理想电介质…

【ORACLE】一个允许关键字作为别名所引起的语法歧义场景

前言 最近在看SQL语法解析器,发现了antlr4提供的PlSql语法树存在一个BUG,然后我顺着这个BUG,构造了一条SQL,在ORACLE执行,如下 然后神奇的事情出现了,这个查询竟然没有返回行!t1表左关联t2&…

pyparsing restOfLine

在 pyparsing 中,restOfLine 是一个解析器(parser),用于匹配当前位置到行尾的所有内容,通常在解析文件或处理逐行数据时非常有用。 restOfLine 的特性 匹配内容:从当前位置一直匹配到换行符 \n 或字符串结…

【数据结构——线性表】单链表的基本运算(头歌实践教学平台习题)【合集】

目录😋 任务描述 相关知识 测试说明 我的通关代码: 测试结果: 任务描述 本关任务:编写一个程序实现单链表的基本运算。 相关知识 为了完成本关任务,你需要掌握:初始化线性表、销毁线性表、判定是否为空表、求线性…

Elasticsearch 集群快照的定期备份设置指南

Elasticsearch 集群快照的定期备份设置指南 概述 快照: 在给定时刻对整个集群或者单个索引进行备份,以便在之后出现故障时可以基于之前备份的快照进行快速恢复。 前提条件: 准备一个备份存储盘,本指南采用的是AWS EFS文件系统做…