Commit 61cae858 authored by 赵啸非's avatar 赵啸非

修改配置文件

parent c624a9b2
......@@ -102,36 +102,29 @@ public class ProxyController {
) {
log.info("proxyPost params: {}, body: {}, headers: {}", params, body, headers);
ApiResp<String> rsp = new ApiResp<>();
String path = params.getOrDefault("path", "");
if (ObjectUtils.isEmpty(path)) {
rsp.setCode(ApiRespCodeEnum.FAILED.getValue());
rsp.setMsg("path is empty!");
// return Mono.just(ResponseEntity.ok().body(JSON.toJSONString(rsp)));
return ResponseEntity.ok().body(JSON.toJSONString(rsp));
}
String method = params.getOrDefault("method", "post");
params.remove("method");
params.remove("path");
String targetUrl = "http://127.0.0.1:11078/basics_api"+path; // 目标 URL
String targetUrl = "http://127.0.0.1:11078/basics_api" + path; // 目标 URL
// 拼接 Query 参数
HttpUrl.Builder urlBuilder = HttpUrl.parse(targetUrl).newBuilder();
params.forEach(urlBuilder::addQueryParameter);
HttpUrl url = urlBuilder.build();
// 构造请求体
okhttp3.RequestBody requestBody = body != null ?
okhttp3.RequestBody.create(MediaType.parse("application/json"), body) :
okhttp3.RequestBody.create(null, new byte[0]);
if ("post".equalsIgnoreCase(method)) {
// 构造请求
Request.Builder requestBuilder = new Request.Builder()
......@@ -152,18 +145,39 @@ public class ProxyController {
}
return ResponseEntity.status(response.code()).body(response.body().string());
} catch (IOException e) {
return null;
//return ResponseEntity.().body("Proxy error: " + e.getMessage());
rsp.setCode(ApiRespCodeEnum.FAILED.getValue());
rsp.setMsg("Proxy error: " + e.getMessage());
return ResponseEntity.ok().body(JSON.toJSONString(rsp));
}
} else if ("get".equalsIgnoreCase(method)) {
Request.Builder requestBuilder = new Request.Builder()
.url(url)
.get();
// 透传 Headers(过滤掉 Host 避免冲突)
headers.forEach((key, value) -> {
if (!key.equalsIgnoreCase("host")) {
requestBuilder.addHeader(key, value);
}
});
} else {
// 发送请求
try (Response response = client.newCall(requestBuilder.build()).execute()) {
if (!response.isSuccessful()) {
return ResponseEntity.status(response.code()).body(response.message());
}
return ResponseEntity.status(response.code()).body(response.body().string());
} catch (IOException e) {
rsp.setCode(ApiRespCodeEnum.FAILED.getValue());
rsp.setMsg("Proxy error: " + e.getMessage());
return ResponseEntity.ok().body(JSON.toJSONString(rsp));
}
} else {
rsp.setCode(ApiRespCodeEnum.FAILED.getValue());
rsp.setMsg("method is not support!");
return ResponseEntity.ok().body(JSON.toJSONString(rsp));
}
return null;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment