JAVA调用简单示例
import java.io.*;
import java.net.HttpURLConnection;
import java.net.URL;
public class Main {
public static void main(String[] args) {
try {
// 提交给DALL-E的文本描述
String prompt = "a painting of a rubber duck in the style of Picasso";
// 构造API请求
String url = "https://api.openai.com/v1/engines/davinci/predictions";
URL apiUrl = new URL(url);
HttpURLConnection connection = (HttpURLConnection) apiUrl.openConnection();
connection.setRequestMethod("POST");
connection.setRequestProperty("Authorization", "Bearer YOUR_OPENAI_API_KEY");
connection.setRequestProperty("Content-Type", "application/json");
connection.setDoOutput(true);
// 构造请求体
String jsonInputString = "{\"prompt\": \"" + prompt + "\", \"max_tokens\": 128}";
// 发送API请求
try(OutputStream os = connection.getOutputStream()) {
byte[] input = jsonInputString.getBytes("utf-8");
os.write(input, 0, input.length);
}
// 解析API响应
try(BufferedReader br = new BufferedReader(
new InputStreamReader(connection.getInputStream(), "utf-8"))) {
StringBuilder response = new StringBuilder();
String responseLine = null;
while ((responseLine = br.readLine()) != null) {
response.append(responseLine.trim());
}
String jsonResponse = response.toString();
// 解析生成的图像URL并打印
String imageUrl = jsonResponse.split("\"")[7]; // 根据API返回的格式解析得到图像URL
System.out.println("Generated Image URL: " + imageUrl);
}
// 关闭连接
connection.disconnect();
} catch (IOException e) {
e.printStackTrace();
}
}
}