- 締切済み
CでHTTPリクエストがしたい
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- akoyagai
- ベストアンサー率42% (3/7)
http://www.geekpage.jp/programming/winsock/ Windowsで始めるのでしたら、このサイトが役に立つと思います。 逆に言うと、UNIXではほとんど役に立ちません。 http://x68000.q-e-d.net/~68user/net/ ネットワークプログラミングについては基礎から説明されていて、なおかつ詳しく書いてあります。 C言語で作るのは、真ん中の方の「C言語編」というところにあります。 ただ、UNIX向けに書かれているので、Windowsで使う場合には注意が必要です。winsockで代用できるものもありますが、できないところもあります。どうしても出来ない場合は、cygwin環境で行いましょう。
- yoneda_16
- ベストアンサー率47% (166/350)
tadao1213さんがどのような環境で動くプログラムを作ろうとしているのか存じ上げないのであまり良いアドバイスができないのですが…。 一般的に広く使われている、HTTPリクエストを行うプログラムを書くためのライブラリとしては「libwww」っちゅーのがあります。 http://www.w3.org/Library/ Windows上で動かすのならこのように。 http://www.w3.org/Library/User/Platform/WinDLL.html でもイマドキはPerlやPythonやRubyで作るのが普通だと思いますが。
- Struts
- ベストアンサー率48% (29/60)
ココなんかどうでしょうか?
関連するQ&A
- HTTPリクエスト
JSPのクライアントからサーブレットにHTTPリクエストを送信する部分について、質問させていただきたく思います。 [実現したいこと] ・クライアント側からのHTTPリクエストのヘッダの内容を、任意のものに書き換えてサーブレットに送信。 [環境] WEB APサーバー:Web Sphere Aprication Server HTTPヘッダを読み取って、ヘッダ内のクライアント情報を元にクライアント別の処理を振り分ける機能を作ったのですが、そこの機能をテストするのに上の機能を使いたいと思ってます。。。 皆様のお知恵を拝借できればと思います。 よろしくお願いいたします。
- 締切済み
- Java
- HTTP_Request2で検索結果を取得したい
pearのHTTP_Request2を使ってサイト内の検索結果を取得したいのですが、 どうにもうまく取得できなくて困っております。 ■やりたいこと 対象サイトをクックパッドにしたいと思います。 http://cookpad.com/search 料理名、食材名のフリーワードのところに例えばキムチと 入力して、その検索結果を表示したい(http://cookpad.com/search/%E3%82%AD%E3%83%A0%E3%83%81)と思っているのですが、リクエストがうまくいかず、上記URLのページがそのまま返ってきてしまいます。ソースは以下です。 <?php require_once "HTTP/Request2.php"; require_once "Net/URL2.php"; $request = new HTTP_Request2('http://cookpad.com/search', HTTP_Request2::METHOD_GET, array('use_brackets' => true)); $url = $request->getUrl(); $url->setQueryVariables(array( 'keyword' => 'キムチ' )); $url->setQueryVariable('commit', 'レシピ検索'); echo $request->send()->getBody(); 一体、どこが間違っているのでしょうか? 下記URLを参照して試みたのですが、どうにもうまくいきません。 お手数ですが、ご教授いただけますと幸いです。 参照ページ http://pear.php.net/manual/ja/package.http.http-request2.request.php
- ベストアンサー
- PHP
- HTTPリクエストヘッダーの設定と遷移
1.HTTPリクエストヘッダーって、任意の項目名で値を設定する事ができるのでしょうか? その場合、どのような設定方法(タグ?)になるのでしょうか。 2.HTTPリクエストヘッダーにある情報を設定し、 そして、そこから別のページに遷移しその別のページで、遷移前に設定していた HTTPリクエストヘッダーの情報を読み込みたいのですが、実現可能でしょうか? また可能な場合、例えば、Javascript、HTMLなんかを利用して可能でしょうか? 初歩的な事かも知れませんが、よく分からず困ってます。 よろしくお願いします。
- ベストアンサー
- HTML
- HTTPリクエストのリクエスト行部とデータ本体部
HTTPリクエストには (1)「HTTPリクエスト行」 (2)「HTTPヘッダー」 (3)「データ本体」の3つのパートがあると思います。 これらのうち、「データ本体」について質問です。 クライアント側から、 formのinputタグにリクエストパラメータをセットしてsubmitしたとき、 サーブレット側ではgetParameterで値を取得していますが、 これは、(3)「データ本体」から取っているのでしょうか? (1)「HTTPリクエスト行」から取っているのでしょうか?
- ベストアンサー
- Java
- HTTPリクエストにおいて送信できるHTTPヘッダ
HTTPに明るいかたに質問です。 下記URLにHTTPヘッダーに含めることのできる文字はASCIIを拡張した8bitASCIIだと 記載があります。 参考URL http://www.studyinghttp.net/header#Utf8InParam このURLにはHTTPヘッダ、特にPOSTメソッドでリクエストを投げる際は、 パーセントエンコーディング(URLエンコードとは言わないのですね・・・。💦) をおこなって、拡張ASCIIの8bitで対応できる文字として符号化して送信するような記述があります。 たしかに、IEなどの特定のブラウザだとアンカータグのhref属性に日本語のパラメータをいれたリンク先をつくると 正しく送信できないときがあったような気もします。 もちろんHTTPの仕様がパーセントエンコーディングとなっている以上、それが正しいやりかたなのでしょうが、 考えればUTF-8なども8bit単位で符号されて 結果【あ】という文字は[¥xe3¥x81¥x82]という16進数のバイト列で表現できていますよね。 ということは、文字列を正しく符号化していえれば拡張ASCIIつまり8bitの範囲でおさめる事ができているのではとおもったのです。 パーセントエンコーディングも必要ないのではと思うのですが・・・。 上記に造詣の深い方、是非ご教授ください。 よろしくお願いします。
- 締切済み
- その他(プログラミング・開発)
- プロキシを通ったHTTPリクエストのIP
LANの中において複数の端末のIPアドレスは、192.168ではじまるケースが多いと思いますが、プロキシサーバを通ったHTTPリクエストのリクエスト元IPアドレスも同じなのでしょうか。それとも、外向けにはまったく違うIPがリクエストにのってゆくのでしょうか。
- 締切済み
- その他(ITシステム運用・管理)
- Perlで言う、LWP HTTPをPHPで
PerlでのスクリプトをPHPに移行しようかと考えております。(勉強のため) それで、PerlのモジュールでいうLWPとHTTPに代わるクラスライブラリ(API)は、どれにあたるのでしょうか? 具体的には、LWP::UserAgentとHTTP::Requestです。 ※詳しくは、 my $wa = new LWP::UserAgent; my $req = new HTTP::Request(GET => $url); my $res = $wa->request($req); PHPのドキュメント(http://www.php.net/manual/ja/)を見たのですが、いまいちピンときませんでした。 参考URLで結構ですので、よろしくお願いいたします。
- ベストアンサー
- PHP
- ■ リダイレクトされるHTTPリクエストのログを見たい ■
既存Webサイトの改修を行っています。 はじめから参加していたわけでないので、 現状がどういった仕様なのか調べるとこから始めています。 HTTPリクエストが、何回かリダイレクトされる箇所があるのですが、 どこへリダイレクトされるか調べたいと思っています。 クライアント側には、リダイレクトされたログが残っていないのでしょうか? 残っているなら、その調べ方を教えていただきたいのですが。 よろしくお願いします。
- 締切済み
- ネットワーク
- HTTP/1.0でリクエストする物(ブラウザ/OS?)について
アクセスログを解析していて疑問がありました。 ログの中で、 GET / HTTP/1.0 という記述がありますが、"HTTP/1.0"の部分には、HTTP/1.1と書かれているログが大多数です。調べるとリクエストのバージョンということですが、1.0でリクエストするのはどういった場合なのでしょうか? ブラウザ or OSの種類によるのかなと思っていましたが、XPでも1.0をリクエストしているログがあります。非常に疑問です。私が使っているログ解析ソフトはHTTP/1.0は無視する仕様になっているということなので、本件の内容がわからなければ、無視する事もできません。 早急に回答が欲しいのです。どなたかご教授ください。
- ベストアンサー
- HTML
- PEARのHTTP_Requestをインストール
さくらのレンタルサーバーにPEARのHTTP_Requestをインストールし、 http://pear.php.net/manual/ja/package.http.http-request.intro.php にあった、「yahoo.com の内容を取得し、それを表示する」という 以下のスクリプトを実行したのですが、何も表示されません。 test_yahoo.php ---------------------------------------------------- <?php require_once "HTTP/Request.php"; $req =& new HTTP_Request("http://www.yahoo.co.jp/"); if (!PEAR::isError($req->sendRequest())) { echo $req->getResponseBody(); } ?> ---------------------------------------------------- 状態は以下の通りです。 /home/user/.cshrc set path = (~/pear/bin /sbin /bin /usr/sbin /usr/bin /usr/local/sbin /usr/local/bin $HOME/bin) /home/user/www/php.ini include_path = ".:/php/includes:/home/user/pear/PEAR" %pear list Installed packages, channel pear.php.net: ========================================= Package Version State Archive_Tar 1.3.7 stable Console_Getopt 1.3.0 stable HTTP_Request 1.4.4 stable Mail_Mime 1.8.1 stable Net_Socket 1.0.10 stable Net_URL 1.0.15 stable PEAR 1.9.1 stable Structures_Graph 1.0.4 stable XML_Parser 1.3.4 stable XML_Util 1.2.1 stable % ブラウザからhttp://user.sakura.ne.jp/の /home/user/www/test_yahoo.php(属性:755)に アクセスしていますが、何も表示されません。 原因、または調べ方を教えてください。 よろしくお願い致します。
- ベストアンサー
- PHP