8

アプリケーションの API プロキシを作成しようとしていますが、Heroku で奇妙なタイムアウト エラーが発生します。

氏は次のように述べています。

2012-12-10T12:49:24+00:00 heroku[router]: at=error code=H12 desc="Request timeout" method=GET path=/api/v1/users/me host=host.herokuapp.com fwd=174.129.79.221 dyno=web.1 queue= wait= connect= service=30000ms status=503 bytes=0

コードは次のようなものです。

$request = curl_init();
curl_setopt($request, CURLOPT_URL, $url);
curl_setopt($request, CURLOPT_USERAGENT, 'AppProxy/1.0');
curl_setopt($request, CURLOPT_HTTPHEADER, array(
    'Accept: application/json',
    'Authorization: Basic ' . $authorization,
    'X-Requested-With: XMLHttpRequest'
));
curl_setopt($request, CURLOPT_VERBOSE, 1);
curl_setopt($request, CURLOPT_RETURNTRANSFER, true);
curl_setopt($request, CURLOPT_SSL_VERIFYPEER, 0);
$response = curl_exec($request);
echo curl_errno($request) . "<br />";
echo curl_error($request) . "<br />";
echo $httpStatus = curl_getinfo($request, CURLINFO_HTTP_CODE) . "<br />";
curl_close($request);
echo $response . "<br />";

何か問題がありますか、これを機能させるためにコードに何かが欠けていますか? Heroku で同じ問題が発生した人はいますか?

前もって感謝します...

4

1 に答える 1

1

cUrl リクエストにタイムアウトを設定してみてください

curl_setopt($request, CURLOPT_CONNECTTIMEOUT, 15);

実行中のボックスから同じリソースを wget するのにどのくらいの時間がかかりますか?

また、コード 503 は Service Unavailable エラーです。ブラウザでリソースを開くことができますか?

于 2012-12-10T13:30:51.620 に答える