| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- import java.net.URI;
- import java.net.http.HttpClient;
- import java.net.http.HttpRequest;
- import java.net.http.HttpResponse;
- import java.nio.charset.StandardCharsets;
- import java.nio.file.Files;
- import java.nio.file.Path;
- import java.time.Duration;
- public class ProbeSimulateLiquorFull {
- private static final String BASE = "http://127.0.0.1:8004";
- private static final String MSG = "\u4f60\u597d\uff0c\u60f3\u4e86\u89e3\u4e00\u4e0b\u5497\u4eec\u767d\u9152\u600e\u4e48\u5356\uff1f";
- public static void main(String[] args) throws Exception {
- HttpClient client = HttpClient.newBuilder().connectTimeout(Duration.ofSeconds(15)).build();
- String loginBody = "{\"tenantCode\":\"cs1\",\"username\":\"admin\",\"password\":\"Admin@123456\",\"code\":\"\",\"uuid\":\"\"}";
- HttpResponse<String> loginResp = client.send(HttpRequest.newBuilder()
- .uri(URI.create(BASE + "/login"))
- .timeout(Duration.ofSeconds(30))
- .header("Content-Type", "application/json; charset=utf-8")
- .POST(HttpRequest.BodyPublishers.ofString(loginBody, StandardCharsets.UTF_8))
- .build(), HttpResponse.BodyHandlers.ofString(StandardCharsets.UTF_8));
- String token = extractToken(loginResp.body());
- long templateId = args.length > 0 ? Long.parseLong(args[0]) : 70L;
- String simBody = "{\"templateId\":" + templateId + ",\"content\":" + jsonEscape(MSG) + "}";
- HttpResponse<String> simResp = client.send(HttpRequest.newBuilder()
- .uri(URI.create(BASE + "/workflow/simulate"))
- .timeout(Duration.ofSeconds(180))
- .header("Authorization", "Bearer " + token)
- .header("Content-Type", "application/json; charset=utf-8")
- .POST(HttpRequest.BodyPublishers.ofString(simBody, StandardCharsets.UTF_8))
- .build(), HttpResponse.BodyHandlers.ofString(StandardCharsets.UTF_8));
- StringBuilder sb = new StringBuilder();
- sb.append("input=").append(MSG).append('\n');
- sb.append("templateId=").append(templateId).append('\n');
- sb.append("HTTP ").append(simResp.statusCode()).append('\n');
- sb.append(simResp.body()).append('\n');
- Files.writeString(Path.of("simulate-liquor-full.txt"), sb.toString(), StandardCharsets.UTF_8);
- System.out.println("written simulate-liquor-full.txt");
- System.out.println(simResp.body());
- }
- private static String extractToken(String json) {
- int i = json.indexOf("\"token\"");
- if (i < 0) return null;
- int q1 = json.indexOf('"', json.indexOf(':', i) + 1);
- int q2 = json.indexOf('"', q1 + 1);
- return json.substring(q1 + 1, q2);
- }
- private static String jsonEscape(String s) {
- return "\"" + s.replace("\\", "\\\\").replace("\"", "\\\"")
- .replace("\n", "\\n").replace("\r", "\\r") + "\"";
- }
- }
|