2012-06-11 3 views
1

Я получаю следующую ошибку снова и снова .. и я не могу понять, что не так! Все, что я сделал, это то, что я скопировал и вставил код с developers.facebook.com, а также изменил ключ id приложения и fb secrey, который я перечеркнул для этих вопросов!Размер поля заголовка запроса превышает ограничение сервера

Ошибка:

Bad Request Ваш браузер послал запрос, что этот сервер не мог понять. Размер поля заголовка запроса превышает лимит сервера. Referer /п

Код, как указано ниже:

   <?php 
      define('FACEBOOK_APP_ID', 'xxxxx'); 
      define('FACEBOOK_SECRET', '2ab5cxxxxxxxxxx89a'); 

      function parse_signed_request($signed_request, $secret) { 
       list($encoded_sig, $payload) = explode('.', $signed_request, 2); 

       // decode the data 
       $sig = base64_url_decode($encoded_sig); 
       $data = json_decode(base64_url_decode($payload), true); 

       if (strtoupper($data['algorithm']) !== 'HMAC-SHA256') { 
       error_log('Unknown algorithm. Expected HMAC-SHA256'); 
       return null; 
       } 

       // check sig 
       $expected_sig = hash_hmac('sha256', $payload, $secret, $raw = true); 
       if ($sig !== $expected_sig) { 
       error_log('Bad Signed JSON signature!'); 
       return null; 
       } 

       return $data; 
      } 

      function base64_url_decode($input) { 
       return base64_decode(strtr($input, '-_', '+/')); 
      } 

      if ($_REQUEST) { 
       echo '<p>signed_request contents:</p>'; 
       $response = parse_signed_request($_REQUEST['signed_request'], 
               Facenook_Secret); 
       echo '<pre>'; 
       print_r($response); 
       echo '</pre>'; 
      } else { 
       echo '$_REQUEST is empty'; 
      } 
      ?> 
+0

'Facenook_Secret' в последнем, если блок? Лицо ** n ** ook? –

+0

Я видел эту проблему на веб-сайте PayPal. Не уверен, что вызывает его, но я не единственный, у кого была эта проблема. Единственное предложение, которое я видел при исследовании этой проблемы, - очистить кеш и файлы cookie. Не очень хорошее решение ... – Travesty3

+0

Очистка кэша не помогла :( – user1446599

ответ

0

Я получил ту же ошибку делают некоторые SHA2 хэширования в JavaScript, после некоторых изменений кода, на ранее рабочем месте. Эта ошибка была отображена браузером Android «Интернет» по умолчанию на Galaxy S3. Браузер Firefox показал различное неправильное поведение. Я не определил конкретную проблему с кодом, но, перейдя к настройкам для приложения «Интернет», очистив кэш и очистив все данные , наконец, эта ошибка исчезла. Браузер Firefox исправил себя после некоторого обновления.