Я создаю REST API, который вызывает API-вызов в цикле. Что-то вроде этого:Результаты отслеживания обратных вызовов Async в Java
@RequestMapping(value = "/sendmessages", method = RequestMethod.POST)
public ResponseEntity<String> sendMessage(ModelMap model,
HttpServletRequest req, HttpServletResponse res,
@RequestBody String requestBody) throws JSONException,
Exception {
JSONObject jsonObject = new JSONObject(requestBody);
JSONArray userIdArray = jsonObject.getJSONArray(ChatConstants.USER_IDS);
for (int i = 0; i < userIdArray.length(); ++i) {
pubnub.publish(SERVER, messageObject, new Callback() {
@Override
public void successCallback(String arg0, Object arg1) {
System.out.println(arg0);
System.out.println(arg1);
}
@Override
public void errorCallback(String arg0, PubnubError arg1) {
super.errorCallback(arg0, arg1);
System.out.println(arg0);
System.out.println(arg1);
}
});
}
return new ResponseEntity<String>(HttpStatus.OK);
}
Я делаю PubNub вызов, который является вызовом Асинхронного и результат возвращается в обратном вызове. Я хочу вернуть выходные данные этих вызовов Async в моем вызове API. Любые идеи, как я могу отслеживать результат этих вызовов?
попросите вызывающего абонента этого API передать вам объект обратного вызова, поэтому, как только вы закончите работу, вам просто нужно ответить обратно на вызывающего абонента, используя ваш успех и ошибку apis. – Techfist