add CommonRequest, FileRequest, GsonRequest, TimiRequest
This commit is contained in:
38
src/main/java/com/imyeyu/network/TimiRequest.java
Normal file
38
src/main/java/com/imyeyu/network/TimiRequest.java
Normal file
@@ -0,0 +1,38 @@
|
||||
package com.imyeyu.network;
|
||||
|
||||
import com.google.gson.reflect.TypeToken;
|
||||
import com.imyeyu.java.bean.timi.TimiResponse;
|
||||
import org.apache.hc.client5.http.fluent.Request;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
/**
|
||||
* @author 夜雨
|
||||
* @since 2025-07-15 14:34
|
||||
*/
|
||||
public class TimiRequest<T> extends GsonRequest<T> {
|
||||
|
||||
protected TimiRequest(Request request) {
|
||||
super(request);
|
||||
}
|
||||
|
||||
public static <T> TimiRequest<T> wrap(Request request) {
|
||||
return new TimiRequest<>(request);
|
||||
}
|
||||
|
||||
public static <T> TimiRequest<T> get(String url) {
|
||||
return new TimiRequest<>(Request.get(url));
|
||||
}
|
||||
|
||||
public static <T> TimiRequest<T> post(String url) {
|
||||
return new TimiRequest<>(Request.post(url));
|
||||
}
|
||||
|
||||
public T result() throws IOException {
|
||||
TimiResponse<T> resp = getGson().fromJson(request.execute().returnContent().asString(), new TypeToken<TimiResponse<T>>() {}.getType());
|
||||
if (resp.isFail()) {
|
||||
throw resp.toException();
|
||||
}
|
||||
return resp.getData();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user