日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

linux shell cgi post,linux下shell处理cgi的方法--post get

發布時間:2023/11/27 生活经验 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux shell cgi post,linux下shell处理cgi的方法--post get 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

web server獲取網頁上HTML的DOM對象信息發送來的信息,主要有get和post方法。

介紹原理的文章很多,但介紹實際應用到linux的shell中的文章很少。

1、get方法

①表單源碼如下,有幾個HTML對象作為傳值對象。

CGI Test

Text field

Radio button

1

2

3

②cgi get腳本,使用環境變量QUERY_STRING傳值。

#!/bin/sh

echo "Content-type: text/html"

echo ""

echo "Sample CGI Output"

echo ""

echo ""

#echo "Environment variables"

#echo ""

env

#echo ""

#echo "========================================================="

#echo ""

#echo "Form variables :"

#echo ""

str=$QUERY_STRING

echo $str

# [ "${str%&}" = "$str" ] && str="$str&"

# pair=${str%%&*}

# var=${pair%=*}

# val=${pair#*=}

pair=${str##*&}

var=${pair%=*}

val=${pair#*=}

str=${str#*&}

echo "$pair"

echo "$var"

echo "$val"

echo "$str"

echo ""

#echo $val

if [ $val = "lighton" ];then

echo "select to open light"

fi

if [ $val = "lightoff" ];then

echo "select to close light"

fi

if [ $val = "rolling" ];then

echo "select to rolling light"

fi

echo ""

echo ""

echo ""

2、post方法

①表單源碼

CGI Test

Text field

Radio button

1

2

3

Some text

②post傳值時,使用環境變量CONTENT_LENGTH表示傳輸數據長度。

而實際內容需要從標準輸入設備接收,這里使用命令“read pos -n CONTENT_LENGTH”,注意,接收個數需做限制。

#!/bin/sh

echo "Content-type: text/html"

echo ""

echo "Sample CGI Output"

echo ""

echo ""

echo "Environment variables"

echo ""

env

echo ""

echo "========================================================="

echo ""

echo "Form variables :"

echo ""

#echo $CONTENT_LENGTH

read pos -n CONTENT_LENGTH

#echo $pos

tmp=${pos%%&*}

#echo $tmp

tmp=${tmp#*=}

echo "Text_Field=$tmp"

tmpcur=${pos#*&}

#echo $tmpcur

tmp=${tmpcur%%&*}

tmp=${tmp#*=}

echo "Radio_Button=$tmp"

tmpcur=${tmpcur#*&}

tmp=${tmpcur%%&*}

tmp=${tmp#*=}

echo "Text_Area=$tmp"

echo ""

echo ""

本文參考http://blog.chinaunix.net/uid-21025382-id-168762.html,非常感謝,但原作對于post的處理存在錯誤之處,這里糾正出來。

總結

以上是生活随笔為你收集整理的linux shell cgi post,linux下shell处理cgi的方法--post get的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。