1

Lua 言語に慣れていないので、助けてください。POST を介していくつかの値を受信しようとしていますが、値は次のようなものです。

pwd = password
ssid = ssid_name

swstat={string.find(payload,"pwd=")}
swstat1={string.find(payload,"ssid=")}
if swstat[2]~=nil then
    pass=string.sub(payload,swstat[2]+1,#payload)
    ssid=string.sub(payload,swstat1[2]+1,#payload)
    print("Password: "..pass)
    print("SSID: "..ssid)
end

上記のコードの実際の結果は次のとおりです (Web ブラウザーを介して ssid=htc および password=fr を送信しています):

Password: fr
SSID: htc&pwd=fr

文字列にパスワードのみを入れ、別の文字列に ssid を入れたいと思います。したがって、私の考えは、次のロジックを使用して文字列を検索することです。 pwd=" and ("&" または文字列の末尾)

4

1 に答える 1

3

は有効なクエリ文字列形式であるためpayload、関連情報をテーブル内に格納できます。

local tData = {}
for sParam, sValue in payload:gmatch "([^=&]+)=([^=&]+)" do
    tData[sParam:lower()] = sValue
end

tDataこれで、テーブル内に情報が表示されます。

tData.pwd     -- will have fr
tData.ssid    -- will have htc
于 2015-10-20T10:03:55.683 に答える