Localhost Невозможно POST - PullRequest
       6

Localhost Невозможно POST

0 голосов
/ 01 февраля 2011

Итак, у меня есть рабочая версия графика, который я сделал с помощью Google Charts API, и я публикую данные / конфигурацию диаграммы следующим образом:

$context = stream_context_create(
    array('http' => array(
      'method' => 'POST',
      'content' => http_build_query($chart))));
    fpassthru(fopen($url, 'r', false, $context));

Отлично работает! Но когда я проверяю это в своем локальном окне Windows и пытаюсь запустить его с Xampp, я получаю эту ошибку:

Внимание: Еореп (http://chart.apis.google.com/chart?chid=982f36) [function.fopen]: не удалось открыть поток: HTTP-запрос не выполнен! HTTP / 1.0 400 плохих запросов в C: \ XAMPP \ HTDOCS \ графа \ image.php по линии 226

Я посмотрел мой файл php.ini в локальной папке, и он находится в fopen wrappers:

; Whether to allow the treatment of URLs (like http:// or ftp://) as files.
; http://php.net/allow-url-fopen
allow_url_fopen = On

; Whether to allow include/require to open URLs (like http:// or ftp://) as files.
; http://php.net/allow-url-include
allow_url_include = Off

; Define the anonymous ftp password (your email address). PHP's default setting
; for this is empty.
; http://php.net/from
;from="john@doe.com"

; Define the User-Agent string. PHP's default setting for this is empty.
; http://php.net/user-agent
;user_agent="PHP"

; Default timeout for socket based streams (seconds)
; http://php.net/default-socket-timeout
default_socket_timeout = 60

; If your scripts have to deal with files from Macintosh systems,
; or you are running on a Mac and need to deal with files from
; unix or win32 systems, setting this flag will cause PHP to
; automatically detect the EOL character in those files so that
; fgets() and file() will work regardless of the source of the file.
; http://php.net/auto-detect-line-endings
;auto_detect_line_endings = Off

В чем здесь может быть проблема? Любой совет поможет Спасибо!

1 Ответ

2 голосов
/ 01 февраля 2011

Это на самом деле работает просто отлично со стороны PHP. Возьмите этот URL и вставьте его в свой веб-браузер:

http://chart.apis.google.com/chart?chid=982f36

Вы получите страницу с ошибкой 400 Bad Request от Google, говорящую The Chart API request contains no valid parameters. Я ничего не знаю об API карт Google, но похоже, что вы не передаете параметры в Google правильно.

...