Ошибка AJAX: синтаксис патронеррора: неожиданный конец ввода JSON [закрыто]JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Ошибка AJAX: синтаксис патронеррора: неожиданный конец ввода JSON [закрыто]

Сообщение Anonymous »

Проблема, вероятно, возникает из -за того, что ответ JSON для Карнатаки слишком велик (712690721 символов), что вызывает ошибку разбора в JavaScript из -за превышения предела памяти браузера или емкости ответа Ajax, а также для других штатов, таких как Андхра -Прадеш, Пенджаб, Телангана, это дает результаты. Похоже, что ответ JSON для Карнатаки слишком велик, что приводит к неудачному прохождению парнем на стороне клиента.

Код: Выделить всё

@PostMapping(value = "/getPhenoAccuData")
public ResponseEntity getDateByStateIdAccService1(@RequestBody RequestInputs reqInputs) {
System.out.println("Received request: state=" + reqInputs.getState_id() + ", Biofixdate="
+ reqInputs.getFromdate_id() + ", Stage=" + reqInputs.getStage());

List getPhenoAccuData = pestServiceRepository
.getDateByStateIdAccService1(reqInputs.getState_id(), reqInputs.getFromdate_id(), reqInputs.getStage());

if (getPhenoAccuData == null || getPhenoAccuData.isEmpty()) {
System.out.println("No data found, returning empty JSON list.");
return ResponseEntity.ok(Collections.emptyList());
}

try {
ObjectMapper objectMapper = new ObjectMapper();
String jsonResponse = objectMapper.writeValueAsString(getPhenoAccuData);
System.out.println("JSON Response Size: " + jsonResponse.length() + " characters");

return ResponseEntity.ok(getPhenoAccuData);
} catch (Exception e) {
e.printStackTrace();
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).build();
}
}
< /code>
Это мой код Javascript: < /p>
var IIRR = {

getPhenoAccMap1: function() {
var stateAbbreviation = $("#inputState").val();
var state = stateAbbreviations[stateAbbreviation];
// Initialize datestring2 (BioFix Date)
var datestring2 = $("#biofixDate").val();
// Get the selected life stage
var lifeStage = $("#inputLifeStage").val();

var formData = {
state_id: state,
fromdate_id: datestring2,
stage: lifeStage,
selected_date: $("#inputDate").val().trim(),
};
console.log("formData:", formData);
// Show loading message
$("#loadingMessage").show();

$.ajax({
type: "POST",
contentType: "application/json",
url: "api/getPhenoAccuData",
data: JSON.stringify(formData),
dataType: 'json',
success: function(response) {
if (!response || response.length === 0) {
console.log("No valid features found for the selected state.");
return;
}
console.log("Response from server:", response);
responseFromServer = response;

// Use Set to ensure unique dates
var uniqueDates = new Set();

// Parse the 'extent' property and add 'date_id' to the set
response.forEach(function(item) {
var extentObject = JSON.parse(item.extent);
uniqueDates.add(extentObject.properties.date_id);
});

// Convert the set to an array
var dateIds = Array.from(uniqueDates);

IIRR.updateSelectedDateDropdown1(dateIds);
// Call updateChoroplethMaps with the selected date
IIRR.updateChoroplethMaps1();
// Hide loading message on success
$("#loadingMessage").hide();
},
error: function(xhr, status, error) {
console.error("AJAX Error:", status, error);
console.log("Response Text:", xhr.responseText);
}
});
},

}
< /code>
Это мое приложение.server.compression.enabled=false
server.compression.mime-types=application/json
server.compression.min-response-size=3072
server.tomcat.connection-timeout=600000ms
server.servlet.session.timeout=600000ms
spring.mvc.async.request-timeout=600000
server.http2.enabled=true
server.tomcat.max-http-post-size=100MB
server.tomcat.max-swallow-size=100MB
spring.servlet.multipart.max-file-size=1GB
spring.servlet.multipart.max-request-size=1GB

< /code>
Я получаю ошибку, когда пытаюсь получить данные из бэкэнда: < /p>
AJAX Error: parsererror SyntaxError: Unexpected end of JSON input
at parse ()
at ajaxConvert (jquery-3.6.0.js:9268:19)
at done (jquery-3.6.0.js:9746:15)
at XMLHttpRequest.  (jquery-3.6.0.js:10057:9)
error @ forecast.js:239Understand this errorAI
forecast.js:240 Response Text:

When i am trying to get data from backend it is getting error but results are showing in eclipse console like below: Received request: state=KARNATAKA, Biofixdate=2024-09-25, Stage=2nd instars
Hibernate: SELECT * FROM ricepest.get_accucal_stages(?, ?, ?)
json response Размер ответа: 712690721 символы

Подробнее здесь: https://stackoverflow.com/questions/795 ... json-input
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»