2012-02-16 20 views

答えて

10

あなた自身の質問に答えました - CFHTTPを使用してください。

<cfhttp method="head" url="http://www.google.com" result="myResult"> 
<cfdump var="#myResult#"> 

myResult構造体には "Status_Code"フィールドを含む "Responseheader"構造体が含まれていることがわかります。数字のステータスコードが含まれます。 数値を必要としない場合は、myResult.Statuscodeを使用するだけで、 "200 OK"のようなものが返されます。

URLが正しくないか、ターゲットに到達する際に問題が発生する場合は、「Responseheader」が空になります。コメントの後

補遺:

あなたはトレースやメソッドなどのオプションで301使用CFHTTP後のリダイレクト先を知りたい場合は

<cfhttp method="trace" url="http://www.google.com" result="myResult"> 

結果には、上記の "Status_Code"とリダイレクト先の "Location"が含まれている必要があります。

+0

実際、私はURLがMoved Permanently Movedであることを望んでいました。新しいパスを返すべきです。出来ますか? – user160820

+0

ルーカスの答えにあるように、cfhttp.responseHeader.LocationまたはmyResult.Location変数には、(新しい)リダイレクトパスが含まれています。 –

1

cfhttpタグでは、redirect属性(例:redirect = "false")を使用する必要があります。その後、元の応答を取得し、どのHTTPコードがリクエストに返されたかを把握することができます。

関連する問題