Я вижу, что с $.ajax()
Я могу использовать свойство dataType
, чтобы сообщить jQuery, какой ответ я ожидаю от сервера, обычно json
.Определить тип данных HTTP-запроса
Но затем на стороне сервера, как узнать тип данных, который был запрошен?
Я понимаю, что обычно сервер должен знать, что отправить на основе содержимого запроса, но мой вариант использования здесь немного отличается. У меня есть обработчик ошибок, встроенный в PHP, и я хотел бы узнать, в каком формате я выводить информацию об отладке. В случае фатальных/синтаксических ошибок, предупреждений, сценарий может даже не дойти до функции обработчика запроса, связанной с запросом.
Существует заголовок CONTENT_TYPE
, но, видимо, он всегда application/x-www-form-urlencoded
, и он отправляется только по запросам POST
.
И есть заголовок HTTP_ACCEPT
, который выглядит как application/json, text/javascript, */*; q=0.01
. Нужно ли разбирать эту строку?
Возможно, лучше иметь отдельный параметр запроса, который указывает, какой тип ответа вы должны отправить. Я не думаю, что вы должны правильно зависеть от 'HTTP_ACCEPT', и кто-то может спросить, например. простой текст, но затем нужно проанализировать его как JSON позже. – Xymostech