Web ページでデータを送信するには、GET と POST の 2 つの方法があります。GET は、web.py でパラメータを送信します。これは、次の URL を構成する場合に適しています。
リーリー
/weixin/ の後の内容は無視して、インデックス クラスを書きましょう
リーリー
index.htmlテンプレートファイルを自由に記述します
リーリー
http://127.0.0.1:8080/ にアクセスする場合、現時点では名前と年齢の値は渡されません。GET 関数はデフォルトの名前と年齢の値を定義しているため、プログラムは kevinkelin と 26 をテンプレートに渡します。 . 次の出力を取得します
リーリー
http://127.0.0.1:8080/?name=yyx&age=26 にアクセスすると、つまり name = yyx と age = 26 を GET 関数に渡すと、次の出力が得られます
リーリー
デフォルトのパラメータを定義することもできません。つまり、空として定義することもできます
リーリー
http://127.0.0.1:8080/ にアクセスすると、テンプレート内の else である hello, world! の出力が得られます
ただし、名前と年齢を定義しないと問題が発生します
リーリー
これは、後で i.name と i.age をテンプレートに割り当てるためですが、これら 2 つの変数はグローバル変数にないため、エラーが報告されます
ただし、「?」を追加せずにこのようにパラメータを渡したい場合は、URL ルールを変更する必要があります
リーリー
クラスインデックスを書き換える
リーリー
ここでは、通常のマッチングによって URL のパラメータを照合し、それをインデックス クラスの GET のパラメータに渡します
http://127.0.0.1:8080/name=yyx&age=26 にアクセスすると、
が表示されます
リーリー
2 番目の方法は簡単そうに見えますが、実際には制御が難しく、正規表現を記述する作業負荷が増加します
GET 経由で渡されるパラメータの数を知りたい場合は、どのパラメータが渡されるかを直接確認することができます
次に、投稿のデータを見てみましょう:
単純なフォームを作成するか、フィドラーを直接使用してデータを構築し、値を POST することができます
リーリー
取得したデータ型を確認したい
リーリー
得られるものは
です。これは、web.py が投稿データを str 型に変換したことを意味します
それではxmlを渡してみます
リーリー
実際、WeChat の XML 形式にいくつかの変更が加えられているので、lxml を使用して解析してみます。
リーリー