• ベストアンサー

DelphiでHTTPアクセス。ステータスコードはどこ?

Delphi6PersonalのClientSocketを使ってHTTPクライアントを作っているのですが、404などのステータスコードはどこに入ってるのでしょうか?また、どうや って取得したらいいのでしょうか?(404のページにアクセスした場合、そのことを示すHTMLのページは取得できます。このページの内容からステータスコードを判断するロジックを組まないといけないのでしょうか?)

質問者が選んだベストアンサー

  • ベストアンサー
  • KojiS
  • ベストアンサー率46% (145/312)
回答No.1

 普通に HTTPでファイルを取得するだけならその通りでしょう。  ヘッダの取得などの本分取得以外のやり取り部分を書けば可能でしょうね。問い合わせってのもありますし。  やり取りの詳しい部分は HTTPサーバー関係を調べましょう。

ruru_20000
質問者

お礼

RFC読んで勉強することにします。 回答ありがとうございました。

関連するQ&A

  • HTTPステータスコード

    HTTPステータスコードが「403」でした。 ホームページ自体は普通に閲覧出来ますが、何故HTTPレスポンスが403と返ってくるのでしょうか。 例えば、以下のような現象です。 ○△□123.jp にアクセスして、 403 Forbidden と表示されたら、403エラーなのに、 ○△□123.jpにアクセスして閲覧出来ても、 HTTPレスポンスが403 Forbidden アクセス拒否されていないのに、 何故このような現象が起きたのでしょうか。 HTTPステータスチェッカー https://singoro.net/http-status-code/

    • ベストアンサー
    • SEO
  • HTTPステータスコード

    本来存在しないページは "404 not found" というステータスコードが返されますが、なぜか200 OK というステータスコードが返されます。 この動画のURL※1は存在するので、200 OK というステータスコードが返されますが、 https://m.youtube.com/watch?v=Z9D0xG-18Ig ※1 この動画のURL※2は存在しないので、404が返されるはずですが、200 OKというレスポンスが返ってきました。 https://m.youtube.com/watch?v=banana ※2 存在しないチャンネルのURLは 404 が返されるのですが、何故でしょうか。 HTTPステータスコードサイト↓ https://singoro.net/http-status-code/

    • ベストアンサー
    • PHP
  • はじめまして。「拡張されたHTTPステータスコード」をWindows版

    はじめまして。「拡張されたHTTPステータスコード」をWindows版のApacheで 返却する方法をご教授下さい。 [経緯] 現在とあるWEBサービスを使用するためのPHPクライアントを作成しております。 PHPクライアントはHTTP経由のGETでパラメータを送り サーバ側もHTTPでクライアントへ結果を返却します。 その結果を元にクライアント側で処理を行います。 但し、サーバ側の結果は「拡張された」HTTPステータスコードで返却されます。 ※「拡張された」HTTPステータスコードは「0」「30」「-3000~-3012」など サーバ側の環境が無いため、現在モックを作成してクライアントの 挙動確認を行おうと考えております。が、モック作成が上手くいかないのです。 モック(PHPモジュール)からRFCに定義されていないHTTPステータスコードを 返却すると、Apacheが500のInternal Server Errorを返却してしまいます。 尚、Windows版のApacheでは上記のような動作となるのですが Linux版のApacheでは、指定したHTTPステータスコードが返却されます。 どなたかWindows版のApacheで、「拡張されたHTTPステータスコード」を 返却する方法をご存知では無いでしょうか? [環境]  サーバOS:Windows Vista Home Premium  WEBサーバ:Apache2.0(Windows版インストーラ使用)  CGI:PHP5.2.12(Windows版Zipを使用) [構図]   (WEBサービス)     ↑|   GET|| HTTPステータスコード     |↓  (PHPクライアント) [サーバ側モジュール例] <?php header('HTTP/1.1 3000 Precondition Failed'); ?> 以上、よろしくお願い致します。

    • 締切済み
    • PHP
  • httpステータスコード 取得

    AndroidStudioでステータスコードを取得する方法について https://developer.android.com/reference/java/net/HttpURLConnection.html 404や500などのhttpステータスコードを取得したいのですが上記の公式リファレンスで調べてみたところ 「HTTP_NOT_FOUND」を使えば404のコードが取得できる可能性があると思っていて タッチイベントなら public boolean onTouchEvent(MotionEvent event) {....}などのメソッドがあると思うのですが どのメソッドで使えば良いのかなど コードのサンプルを調べているのですが中々見つかりません。 「HTTP_NOT_FOUND」はどのメソッドで使えばいいのでしょうか? 目的 ・Webviewにて表示しているアプリでサイトが見つからないときに404などのコードをエラー画面に表示し500などの場合も別のエラーページを表示したい。

    • ベストアンサー
    • Java
  • HTTPステータスコードを取得(VBScript)

    VBScriptで、ある任意のWeb画面に対してリクエストを行い、 HTTPステータスコード(200 ok 等)を取得する方法はありますでしょうか。 現在Web画面が正常に表示されているかどうかを確認する為の監視ツールを考えています。 どなたかお分かりになる方がいらっしゃいましたらご教授下さい。

  • ステータスコード404がFirefoxでブランクページになる

    <? header("HTTP/1.0 404 Not Found"); ?> 上のようにheader()関数にステータスコード404を埋め込んで、ブラウザに404エラーを返すだけのスクリプトを書きました。上記1行がファイルの全内容です。 複数のパソコンからテストをしたのですが、このファイルにアクセスすると、IE7では「HTTP 404 not found/Web ページがみつかりません」というページが正常に表示されますが、Firefox2では全くのブランクページが表示されてしまいます。 header()の前に空白文字はなく、以下のような記述も試しましたが結果は同じでした。でたらめなURLにアクセスすると、not foundはちゃんと表示されます。 <? header("Not Found", true, 404); ?> Firefox2でPHPスクリプトからのステータスコード404をヘッダーで受けて「404 not Found」のページを表示させたいのですが、どうすればよいのでしょうか。 よろしくお願いいたします。

    • ベストアンサー
    • PHP
  • Winsockでステータスコードを受信するには

    タイトルの件でおうかがいします。 httpサーバにGETなりPOSTのリクエストをしたときのHTTPステータスコードは、どのようにして取得すればよいでしょうか? 「200 OK」とか「403 Forbidden」とかいうのを取得したいのですが…。 よろしくお願いします。

  • VBでHTTPの並行アクセスを行いたいのですが

    Visual Basic 6.0で複数のHTMLファイルを並行して読み込むHTTPクライアントを作成することは可能でしょうか?また、それを実現するためにはどうすればよいのでしょうか? できましたら、サンプルコードなども併せて掲載して頂けるとありがたいです。よろしくお願い致します。

  • htmlファイルを読み込み、Titleタグを取得する方法

    Delphi6Personalでプログラムを作っているのですが、Htmlファイルを読み込み、TITLEタグの内容を、つまりそのページのタイトルを取得するプログラムを作りたいのですが、いい方法が思いつきません。 自分でコードを組むことはできると思うのですが、文字コードの変換や、タグ省略時の処理が必要になるので、難しいなあと思ってます。 なにかいい方法は無いでしょうか?

  • HTTPステータス 404 - /servlet/Testについて

    はじめまして。Javaの初心者です。 どうしてもわからないことがあります。それは、 最初にJSPページでHTMLフォームにデータを入力して <input type="submit"/>タグでサーブレットに送信し て、サーブレットでHTMLフォームのデータ を使用して処理を行わせてから再び最初のJSPページ にリクエストを転送(forward)すると、サーブレット での処理結果が表示されるのですが、そのあと再び HTMLフォームにデータを入力して <input type="submit"/>タグでサーブレットに送信す ると、「HTTPステータス 404 -/servlet/Test」などと 表示され、サーブレットが利用可能でなくなります。 なぜなのでしょうか?どのようにしたら解決できるの かどうか教えてください。お願いします。

    • ベストアンサー
    • Java

専門家に質問してみよう