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

MyMemoWiki

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

提供: MyMemoWiki
ナビゲーションに移動 検索に移動
(ページの作成:「==Google App Engine Http Formパラメータの取得== Http Form パラメータの処理。 以下参照。 * POSTメッセージハンドラ * HTML特殊文字の…」)
 
15行目: 15行目:
 
     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.RequestHandler):
 
     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')) # FORMパラメータ取得
                                 + '<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月15日 (土) 08:02時点における版

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()