jQueryのpostからのリクエストをCGIで受信して処理したい
こんにちわ。CGIはまったくの素人に近いですが、よろしくお願いします。
今作成中のページからjavascript(具体的にはjQuery)を使ってpostでリクエストをサーバに送信し、それをCGIで受け取ってカウンタを増やして返す的なことをやろうとしています。
送信側ではとりあえずページをロードしたら(view()で)リクエストを送り(下のtest.cgi)、帰ってきた値を(ID"count1"で)ページにまた反映するという形をとっています。
javascriptのpost部分抜粋
function view() {jQuery.post("../../../cgi-bin/test.cgi",
{"key1":"1"},
function(data){
$("#count1").html(data)
}
);
};
送信はできてるみたいなのですが受け取るCGIが問題で、「フォームからデータを送る場合」というのは山ほど解説があるのですが単純に送られてきたリクエストを受け取るのは下のプログラムではダメみたいです。
CGI部分
#!/usr/bin/perl
my $counter=0;
read( STDIN, $buffer, $ENV{'CONTENT_LENGTH'} );
$counter++;
return("$counter");
当初CGIが必要だとは思わずにいたので、昨日からCGIを勉強し始めたレベルの素人ですが
じっくりと腰をすえて一人で解決する時間もないので、よろしくお願いします。
No.1ベストアンサー
- 回答日時:
Ajaxに値を戻すなら、普通にブラウザへ表示(HTTPヘッダ付き標準出力)するようにします。
例:
return("$counter");
の行を
print "Content-type: text/plain\n\n";
print $counter;
とします。
ただ、Ajax側のリストをよく見ていないので動くかどうかはやってみてください。
この回答への補足
変えてみましたけどダメでした。
ただ、HTTPヘッダ付き標準出力にするっていう情報がとっかかりになると思うんで
そっちから攻めてみます。ありがとうございます。
#!/usr/bin/perl
print "Content-type: text/html\n";
print "\n";
$counter=0;
read(STDIN, $data, $ENV{'CONTENT_LENGTH'});
$counter++;
print "$counter<br>\n";
行の順番を入れ替えたら普通にいけました!ありがとうございます!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- CGI htmlからパラメータで、cgiに渡したい。 1 2023/02/06 16:15
- CGI CGIが読み書きするデータファイルのパーミッションはさくらのインターネットでは何にするべき? 1 2023/05/02 16:44
- ホームページ作成・プログラミング CGIが実行可能なHP領域又はレンタルサーバーでおすすめの所を教えてください 現在ホームページ領域の 1 2023/01/01 11:47
- CGI htmlからcgiを自動的に起動させたい 1 2023/02/21 19:39
- CGI (フリーの)ツリー掲示版CGI、昔は多用させてもらいましたが・・今セキュリティ上どうでしょう? 2 2023/06/25 07:18
- CGI CGIで出力するhtmlの<!DOCTYPE html>等のタグは要りますか? 2 2023/02/05 21:26
- Perl perlのrequireの動き方についての質問 2 2022/10/30 17:27
- CGI perlで書いたcgiでsqliteの使い方を教えてください 2 2023/05/08 21:29
- Perl perlの構文でカンマの意味が分からない 2 2022/10/30 01:53
- その他(ネットショッピング・通販・ECサイト) 中国のサイトで注文して昨日の返信です 配送状況は、下記配達会社のWEBサイトにご確認いただけます。 3 2022/12/31 08:19
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
apacheでPerl CGIが作動せず、5...
-
CGIの中で出力するテキスト内容...
-
jQueryのpostからのリクエスト...
-
燃えるゴミの日は何曜日ですか?
-
月の第一週とは
-
よくある 『 第○(1・2・3・4・...
-
エクセルで毎月第2週日の水曜日...
-
C言語始めたてで先生にこれ進め...
-
毎○曜日って、使いますか?
-
c言語の質問です。 ある月のカ...
-
perlでHTTP Request Headersの...
-
週休3日制で土日の他にもう一日...
-
VBAでExcelのヘッダーに文字列+...
-
土曜日の26時って何曜日の何時...
-
週2回のペースって だいたい何...
-
F-BASIC ツェラーの公式...
-
file_get_contents でリダイレ...
-
Content-type: text/htmlが表示...
-
[Excel] ある日の曜日が当月の"...
-
第○曜日であるかを取得する関数
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
apacheでPerl CGIが作動せず、5...
-
apacheで403を404のように見せる
-
CGIの中で出力するテキスト内容...
-
CGIで出力するhtmlの<!DOCTYPE ...
-
jQueryのpostからのリクエスト...
-
SSI で #exec 以外で Perl-CGI ...
-
500 Internal Server Error
-
ローカルサーバーでの動作確認
-
An HTTPdでPerlを動かす
-
AN HTTPDのバーチャルホストでC...
-
SSIでPOSTデータを受け取りたい
-
よくある 『 第○(1・2・3・4・...
-
月の第一週とは
-
エクセルで毎月第2週日の水曜日...
-
週2回のペースって だいたい何...
-
毎○曜日って、使いますか?
-
[Excel] ある日の曜日が当月の"...
-
エクセルで相対パスの書き方を...
-
アンケートなどの1日1回の投...
-
DBを10件毎に表示ページング...
おすすめ情報