我對 API 和 AJAX 很陌生,我在這里遇到了一個問題。我在 PHP (Symfony) 中創建了一個端點。
當我使用 Postman 在這個端點上呼叫 GET 時,我得到了正確的答案。

但是當我嘗試使用 AJAX 獲取答案時出現 500 錯誤。這是我的代碼:
<script src="https://code.jquery.com/jquery-3.5.1.min.js"
integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0="
crossorigin="anonymous"></script>
<button id="testButton">TEST</button>
<script>
$('#testButton').click(function (e) {
let week = 42;
let year = 2021;
let data = JSON.stringify({
id:1,
week: week,
year: year}
);
$.ajax({
url: '{{ path('bookings')}}',
type: 'GET',
contentType: "application/json",
dataType: 'json',
data: data,
success: function (data, status) {
console.log(status)
if (status === 'success') {
console.log(data);
console.log('success');
} else {
console.log('failure');
}
}
});
});
</script>
Path(bookings) 回傳 127.0.0.1:8000/bookings。
這是我得到的錯誤:

你能指出我哪里出錯了嗎?
uj5u.com熱心網友回復:
當您使用 jQuery 發送 GET 請求時,您可以將data屬性作為PlainObject
不用字串化試試這個:
let data = {
id:1,
week: week,
year: year
};
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/314711.html
