PHP проверяют, является ли Входящий запрос типом JSON

Это - определенный ответ на C, и почему это намного более важно для C, чем к чему-либо еще.

#include <stdio.h>
int main()
{
   FILE *fp = "some string";
}

Этот код компилирует с предупреждение . Что и должно быть ошибками на примерно любом языке на планете (запрещающий ассемблер), предупреждения в C. Предупреждения в C являются почти всегда скрытыми ошибками. Предупреждения должны быть зафиксированы, не подавлены.

С gcc, мы делаем это как gcc -Wall -Werror.

Это было также причиной высокого rantyness о некотором MS незащищенные предупреждения API. Большинство людей программирование C научилось на горьком опыте для обработки предупреждений как ошибок и этого материала, появилось, который просто не был тем же видом вещи и хотел непортативные меры.

8
задан Graviton 3 September 2009 в 19:33
поделиться

6 ответов

Откуда вы принимаете запросы, о которых вы точно не знаете?

У вас может быть функция в начале скрипта, которая пытается импортировать данные как JSON или simplexml . Если он обнаруживает ошибку, вы знаете, что это другая ...

Если подумать, пусть он проверяет, что это JSON, simplexml выдаст ошибку по множеству причин.

 $json_request = (json_decode($request) != NULL) ? true : false;
12
ответ дан 3 November 2019 в 14:03
поделиться

Вы можете проверить заголовок X-Requested-With , некоторые библиотеки, например jQuery , устанавливают для него значение «XMLHttpRequest» .

$isAjaxRequest = $_SERVER['X_REQUESTED_WITH'] == 'XMLHttpRequest';
4
ответ дан 3 November 2019 в 14:03
поделиться

Вам потребуется установить заголовок со стороны клиента. jQuery и другие библиотеки устанавливают заголовок x-requested-with :

if(strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest')
{
   echo "Ajax request";
}
8
ответ дан 3 November 2019 в 14:03
поделиться

Вы можете проверить параметр accept, если это текст / javascript, ваш говорящий json, если это текст / xml, угадайте, что: P

$ _ SERVER ['HTTP_ACCEPT']

4
ответ дан 3 November 2019 в 14:03
поделиться

Попробуйте json_decode ()

0
ответ дан 3 November 2019 в 14:03
поделиться

вы всегда можете установить дополнительный заголовок, определяющий это, или использовать произвольную переменную для указания запросов JSON.

0
ответ дан 3 November 2019 в 14:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: