#reactjs #typescript #react-typescript
Вопрос:
Данные не передаются из интерфейса в серверную часть, и я использую react-typescript для интерфейса и компоновки части
getReservation(resType: ReservationType, resId: number): Promise<ReservationResult> {
const cognitoSsoToken = sessionStorage.read(COGNITO_SSO_TOKEN);
log.debug(`Cognito SSO token ${cognitoSsoToken ? 'found' : 'not found'} in the session`);
const apiUrl: string = `${RESERVATION_DETAIL_API_URL}/${resId}amp;resType=${resType}`;
//in case we do not want to make actual API calls we can just configure it to work with fake data
if (process.env.REACT_APP_USE_FAKE_REQS === 'TRUE') {
return this.getReservationFake();
}
log.debug(`Calling get resort overview API: ${apiUrl}`);
const savedSID = sessionStorage.read(ReservationService.SEARCH_CRITERIA_SESSION_ID);
//currently Experience API is very slow , so we give it a long wait before it times out
const to = API_CALL_TIMEOUT ? parseInt(API_CALL_TIMEOUT) : 20000;
return timeoutPromise(to, "loading data for resort overview",
axios.get(apiUrl, {
headers: {
'Content-Type': 'application/json',
'sessionId': savedSID ? savedSID : Guid.create().toString(),
'X-correlation-id': Guid.create().toString().replace('-', ''),
'Authorization': cognitoSsoToken ? `Bearer ${cognitoSsoToken}` : '',
'X-Owner-Id' : sessionStorage.read(OWNER_NUMBER)
}
})
.then((resp: AxiosResponse<any>) => {
log.debug(`resort overview - response body: ${JSON.stringify(resp)}`);
return resp.data
}
)
.catch((error: any) => handleError(error, apiUrl))) as Promise<any>;
}
goToViewReservation = (resId: number, resType: ReservationType) => {
console.log("resType: ", resType)
console.log("resId: ", resId)
if ([ReactAppMode.VOA, ReactAppMode.LOCAL].includes(EXEC_MODE)) {
this.props.setScreenType(ScreenType.VIEW_RESERVATION, resId, resType);
} else {
// VCAP (production)
window.location.href = `/viewReservation.jsp?resId=${resId}amp;resType=${resType}`;
}
};
проблема здесь в том, что когда-либо учетных данных и данных, добавленных в фронт-энда не будет обработан в бэк-энде, и я попытался отладки это несколько раз, и я обнаружил, что если я удалить amp;resType=${resType}
строку в const apiUrl: string =
${RESERVATION_DETAIL_API_URL}/${л}amp;ресурс=${ресурс} ;
API-интерфейс будет загружен, я пробовал отлаживать его несколько раз и погуглить что бы ошибкой, но до сих пор нет прогресса. Спасибо вам за помощь.