これは私のプロジェクトのコードの一部です。ウェブページが異なるリクエストで異なるステータスコードを返します
URL="http://www.amazon.com",
HTTPOpts = [{autoredirect, false}],
case httpc:request(get, {URL, [{"User-Agent", "Mozilla"}]}, HTTPOpts, []) of
{ok, {{_, Code, _}, Headers, Body}} when Code == 200 ->
%%code for process code=200 %%
{ok, {{_, Code, _}, Headers, _}} when Code < 310 , Code >= 300 ->
%% redirection
{ok, {{_, Code, _}, Headers, _}} when Code ==503 ->
%%service unavailable
問題はhttp
リクエストを実行すると、別のステータスコードが返されます。私はいつも私もwget "www.amazon.com"
を使用して、それを試してみましたCode = 200
得るようURL
の場合
私は私を行う方法の2つの応答、Code = 200
とCode = 503
を得ている上に、これを処理する、それは同じ結果を与えます。 Code = 503
の場合の再要求が、それはループに入ることとCode = 200
を返さないか、クライアント要求の遅延をもたらす数回繰り返し、後に返す決してありこれに伴う問題:
私の考えを。
解決方法