Как сделать асинхронный/ждать пост? Получение 500 внутренней ошибки сервераPhp

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Как сделать асинхронный/ждать пост? Получение 500 внутренней ошибки сервера

Сообщение Anonymous »

Я успешно сделал пост в мой PHP API с моей функцией ThisWorks (), но я пытаюсь использовать функцию Async /Await post (), но я продолжаю возвращать 500 внутреннего ответа на сервер, когда я пытаюсь сделать это, что я не уверен, как отлаживать, так как мой код в моей функции Async в основном одинаковой, что и в этом, что две функции. -< /p>

//I can make a succesful post to my api with this function and it returns a 200 ok response from the server

function thisWorks(title, message, author, id) {
fetch("http://menu.com/menu/api/post/create.php", {
method: "POST",
headers: new Headers(),

body: JSON.stringify({
'title' : title,
'body' : message,
'author' : author,
'category_id' : id
})
})
.then( (response) => {
console.log(response);
});
}

//this gives a 500 internal server error and TypeError: "NetworkError when attempting to fetch resource."

const post = async (title, message, author, id) => {

const location = "http://menu.com/menu/api/post/create.php";

const settings = {
method: 'POST',
headers: new Headers({
'Accept' : 'application/json',
'Content-Type': 'application/json'
}),
body: JSON.stringify({
'title' : title,
'body' : message,
'author' : author,
'category_id' : id
})
};

try {
const response = await fetch(location, settings);
const json = await response.json();
console.log(json);
return json;
} catch (error) {
console.log(error);
return error;
}
}
< /code>

до того, как я получил такую же 500 внутренних ошибок сервера в ThisWorks, и ошибка на моем сервере Apache была теми же ошибками, которые я сейчас получаю в своей функции Async Post, которая является этим -< /p>

[Sun Feb 17 18:21:11.122109 2019] [php7:warn] [pid 890] [client 127.0.0.1:37548] PHP Warning: Header may not contain more than a single header, new line detected in /home/orpheus/Practice_dev/menu/api/post/create.php on line 7

[Sun Feb 17 18:21:11.122452 2019] [php7:notice] [pid 890] [client 127.0.0.1:37548] PHP Notice: Trying to get property 'title' of non-object in /home/orpheus/Practice_dev/menu/api/post/create.php on line 22

[Sun Feb 17 18:21:11.122471 2019] [php7:notice] [pid 890] [client 127.0.0.1:37548] PHP Notice: Trying to get property 'body' of non-object in /home/orpheus/Practice_dev/menu/api/post/create.php on line 23

[Sun Feb 17 18:21:11.122477 2019] [php7:notice] [pid 890] [client 127.0.0.1:37548] PHP Notice: Trying to get property 'author' of non-object in /home/orpheus/Practice_dev/menu/api/post/create.php on line 24

[Sun Feb 17 18:21:11.122482 2019] [php7:notice] [pid 890] [client 127.0.0.1:37548] PHP Notice: Trying to get property 'category_id' of non-object in /home/orpheus/Practice_dev/menu/api/post/create.php on line 25

[Sun Feb 17 18:21:11.122743 2019] [php7:error] [pid 890] [client 127.0.0.1:37548] PHP Fatal error: Uncaught PDOException: SQLSTATE[HY000]: General error: 1366 Incorrect integer value: '' for column 'category_id' at row 1 in /home/orpheu$
< /code>

Проблема была не в моем коде PHP, но это было с моим запросом Fetch, и я решил его, добавив New Headers () в запрос, и он сработал. Поэтому я уверен, что проблема в некоторой ошибке в том, как я называю функцию Async post (), но я не знаю, что изменить. < /p>

edit-< /p>

Это мои заголовки в create.php. Они принимают тип контента - приложение /JSON, поэтому я не уверен, почему я не могу добавить это в свои запросы AJAX без получения ошибок < /p>

header('Access-Control-Allow-Origin: *');
header('Content-Type: application/json');
header('Access-Control-Allow-Methods: POST, OPTIONS');
header("Access-Control-Max-Age: 3600");
header('Access-Control-Allow-Headers: Access-Control-Allow-Headers,Content-Type,Access-Control-Allow-Methods,
Authorization, X-Requested-With, Content-Type, Authorization');


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

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

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

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

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

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

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