Я серьезно застрял в такой точке, что когда я отправляю запрос POST через Ax ios js библиотеку, я получаю
Illegal base64 character 2d error
Но когда я использую пользовательский интерфейс swagger, те же данные base64 отправляются успешно. Полностью те же данные, я почти уверен. Потому что я копирую содержимое запроса со страницы проверки браузера и вставляю его на страницу Swagger-ui, и он отлично работает.
const data = {};
data["newToken"] = btoa(token);
data["oldToken"] = btoa(oldToken);
Я пробовал все, что мог. Даже кодирование содержимого в base64.
@PostMapping(value = "/token/sync")
@ApiOperation(value = "", notes = "Sync web socket token")
public void syncSocketToken(@RequestBody SyncTokenRequest request) {
tokenService.syncToken(request.getNewToken());
tokenService.removeToken(request.getOldToken());
}
Это мой контроллер.
export const messageTokenSyncApi = async data =>
Api.post("services/pobnotification/api/v1/items/token/sync", data);
/// Api.js is here ///
import axios from "axios";
import * as AxiosLogger from "axios-logger";
const axiosInstance = axios.create({
baseURL: "/",
withCredentials: true,
headers: {
"Content-Type": "application/json"
}
});
if (process.env.NODE_ENV === "development") {
axiosInstance.interceptors.request.use(AxiosLogger.requestLogger);
}
export default axiosInstance;
И полезная нагрузка запроса здесь. Строки токенов закодированы в base64.
{"newToken":"Y3l0S2qX05.....1T21mN0c1RFcxSg==","oldToken":""}
Я с нетерпением жду возможности прочитать ваше мнение об этом.
Спасибо