Как рассчитать размер полезной нагрузки Rest API?

Я реализую API веб-службы REST в своем PHP-кодировании, веб-служба имеет ограничение на размер полезной нагрузки 200 КБ. Как я могу рассчитать размер данных post json или полезную нагрузку размера данных json. Итак, мне точно нужно рассчитать размер полезной нагрузки, я использую данные json для типа сообщения.

пример кода: @curl_setopt($chaccess, CURLOPT_POST, true); @curl_setopt($chaccess, CURLOPT_POSTFIELDS, $post_json);


person itsme    schedule 25.02.2015    source источник


Ответы (1)


Чтобы получить размер данных POST со стороны сервера

(int) $_SERVER['CONTENT_LENGTH'];

Чтобы получить значение данных сообщения, которое отправляется клиенту:

$size = strlen($post_data);
$size = $size * 8 / 1000);
if($size >= 200){
    // change the payload to 200 kb size
}else{
    // Proceed
}
person Faraj Farook    schedule 25.02.2015
comment
Привет, Фарадж, я использую curl @curl_setopt($chaccess, CURLOPT_POST, true); @curl_setopt($chaccess, CURLOPT_POSTFIELDS, $post_json); - person itsme; 25.02.2015
comment
Вы хотите получить максимальный размер полезной нагрузки, принимаемый вашим PHP-сервером, из клиента CURL? или Вы хотите получить размер полезной нагрузки в PHP, которую отправляет curl? - person Faraj Farook; 25.02.2015
comment
Нет, максимальный размер полезной нагрузки, принятый для остальных API, составляет 200 КБ. Теперь мне нужно отправить полезную нагрузку json в пределах 200 КБ. Теперь, как я могу рассчитать размер полезной нагрузки данных json - person itsme; 25.02.2015
comment
Хорошо, теперь я понял вашу точку зрения. Вы должны получить длину данных в переменной $post_json, не так ли? strlen($post_json) * 8 /1000 даст значение в КБ - person Faraj Farook; 25.02.2015
comment
Я думаю, это нормально. но я не понял, зачем вычислять strlen - person itsme; 25.02.2015