gpt4 book ai didi

java - GWT - 如何在收到响应后从 RequestBuilder 返回一个字符串值?

转载 作者:行者123 更新时间:2023-11-29 04:27:48 25 4
gpt4 key购买 nike

我不知道如何从 RequestBuilder 的 sendRequest() 返回字符串值收到响应后的方法。我提到了 similar question建议使用 Callback<String, String> callback但我不知道如何实现它。 GWT documentation对于 Callback没有任何例子。

我有一个类Requester使用方法 generateRequest()应该使用 RequestBuilder 发出请求并在调用时返回一个字符串。 processResponse()方法获取响应,对其进行解析并返回一个字符串,我将其存储在 output 中.我怎样才能退回这个 output generateRequest() 时的字符串是从另一个类调用的?

public String generateRequest() {
RequestBuilder builder = new RequestBuilder(RequestBuilder.GET, URL.encode(url.getUrl()));
builder.setHeader("Authorization", authHeader);
String title = null;

try {
builder.sendRequest(null, new RequestCallback() {

public void onError(Request request, Throwable exception) {
GWT.log(exception.getMessage());
}

public void onResponseReceived(Request request, Response response) {
String output = processResponse(response);
}
});
} catch (RequestException e) {
GWT.log(e.getMessage());
}

return title;
}

最佳答案

我想你可能误解了什么。

您不能简单地返回一个字符串,因为调用是异步的(即,您不能返回字符串,因为在您希望返回它时,字符串还不可用)。你可以简单地等待直到调用结果准备好,但这是非常糟糕的做法;这就是为什么您会看到人们建议回调。

关于java - GWT - 如何在收到响应后从 RequestBuilder 返回一个字符串值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45360151/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com