| ページ一覧 | ブログ | twitter |  書式 | 書式(表) |

MyMemoWiki

「Google App Engine Http Formパラメータの取得」の版間の差分

提供: MyMemoWiki
ナビゲーションに移動 検索に移動
(ページの作成:「==Google App Engine Http Formパラメータの取得== Http Form パラメータの処理。 以下参照。 * POSTメッセージハンドラ * HTML特殊文字の…」)
 
 
(同じ利用者による、間の1版が非表示)
1行目: 1行目:
==Google App Engine Http Formパラメータの取得==
+
==[[Google App Engine Http Formパラメータの取得]]==
 
Http Form パラメータの処理。
 
Http Form パラメータの処理。
 
以下参照。
 
以下参照。
 
* POSTメッセージハンドラ
 
* POSTメッセージハンドラ
* HTML特殊文字のエスケープ
+
* [[HTML]]特殊文字のエスケープ
* FORMパラメータ取得
+
* FO[[R]]Mパラメータ取得
  
 
  import cgi
 
  import cgi
12行目: 12行目:
 
  from google.appengine.ext import webapp
 
  from google.appengine.ext import webapp
 
   
 
   
  class MainPage(webapp.RequestHandler):
+
  class MainPage(webapp.[[R]]equestHandler):
 
     def get(self):
 
     def get(self):
 
         self.response.out.write("""
 
         self.response.out.write("""
         <html>
+
         &lt;html&gt;
           <body>
+
           &lt;body&gt;
             <form action="/msg" method="post">  
+
             &lt;form action="/msg" method="post"&gt;  
               name:<input type="text" name="name" value=""><br>
+
               name:&lt;input type="text" name="name" value=""&gt;&lt;br&gt;
               msg&nbsp;:<textarea name="message"></textarea><br>
+
               msg&nbsp;:&lt;textarea name="message"&gt;&lt;/textarea&gt;&lt;br&gt;
               <input type="submit">
+
               &lt;input type="submit"&gt;
             </form>
+
             &lt;/form&gt;
           </body>
+
           &lt;/body&gt;
         </html>
+
         &lt;/html&gt;
 
         """)
 
         """)
 
   
 
   
  class MessagePage(webapp.RequestHandler):
+
  class MessagePage(webapp.[[R]]equestHandler):
 
     def post(self): # POSTメッセージハンドラ
 
     def post(self): # POSTメッセージハンドラ
         self.response.out.write('<html><body>')
+
         self.response.out.write('&lt;html&gt;&lt;body&gt;')
 
         self.response.out.write('name:'  
 
         self.response.out.write('name:'  
                                 + cgi.escape( # HTML特殊文字のエスケープ
+
                                 + cgi.escape( # [[HTML]]特殊文字のエスケープ
                                   self.request.get('name')) # FORMパラメータ取得
+
                                   self.request.get('name')) # FO[[R]]Mパラメータ取得
                                 + '<br>')
+
                                 + '&lt;br&gt;')
         self.response.out.write('message:<pre>'  
+
         self.response.out.write('message:&lt;pre&gt;'  
 
                                 + cgi.escape(
 
                                 + cgi.escape(
 
                                   self.request.get('message'))  
 
                                   self.request.get('message'))  
                                 + "</pre>")
+
                                 + "&lt;/pre&gt;")
         self.response.out.write('</body></html>')
+
         self.response.out.write('&lt;/body&gt;&lt;/html&gt;')
 
          
 
          
 
  def main():
 
  def main():

2020年2月16日 (日) 04:26時点における最新版

Google App Engine Http Formパラメータの取得

Http Form パラメータの処理。 以下参照。

  • POSTメッセージハンドラ
  • HTML特殊文字のエスケープ
  • FORMパラメータ取得
import cgi
import wsgiref.handlers

from google.appengine.api import users
from google.appengine.ext import webapp

class MainPage(webapp.RequestHandler):
    def get(self):
        self.response.out.write("""
        <html>
          <body>
            <form action="/msg" method="post">  
              name:<input type="text" name="name" value=""><br>
              msg :<textarea name="message"></textarea><br>
              <input type="submit">
            </form>
          </body>
        </html>
        """)

class MessagePage(webapp.RequestHandler):
    def post(self): # POSTメッセージハンドラ
        self.response.out.write('<html><body>')
        self.response.out.write('name:' 
                                + cgi.escape( # HTML特殊文字のエスケープ
                                  self.request.get('name')) # FORMパラメータ取得
                                + '<br>')
        self.response.out.write('message:<pre>' 
                                + cgi.escape(
                                  self.request.get('message')) 
                                + "</pre>")
        self.response.out.write('</body></html>')
        
def main():
    application = webapp.WSGIApplication(
                                         [('/', MainPage),
                                          ('/msg', MessagePage)],
                                          debug=True 
                                         )
    wsgiref.handlers.CGIHandler().run(application)

if __name__ == "__main__":
    main()