Doug Epling
depling at insightbb.com
Tue Jan 5 22:12:52 EST 2010
Why would I want to import apache, util? The request object created by the publisher automatically creates a FieldStorage object. So when I pass the request object, whether POST or GET, along with some other trivial data the python script on the server should simply take the data argument as a parameter and return a page with it printed on it. Why doesn't the apache user have this permission? calling page: def index(): s = """\ <html> <head></head> <body> <h2>Hello World!</h2> <form action="script/greet" method="GET"> Name: <input type="text" name="name"><br> <input type="submit"> </form> </body> </html> """ return s server script: def greet(req, name): return 'Hello %s' % name On 01/05/2010 09:40 PM, john burke wrote: > this should be all you really need. what you do with the data from > request_data is your own business. > > from mod_python import apache, util > > def login(req): > > request_data = util.FieldStorage(req) > > logreqdata(req, request_data) > > qry = "SELECT u.user_id as id, u.user_name as name FROM users u" > qry += " WHERE u.user_name = '" > qry += request_data.getfirst("user_name") > qry += "' AND u.user_pass ='" > qry += request_data.getfirst("user_pass") > qry += "'" > return dorequest(req, qry, "users", "user").toxml("utf-8") > > def logreqdata(req, data): > > if (DEBUG> 0): > > apache.log_error("********************************************************") > apache.log_error(str(req.parsed_uri)) > apache.log_error(str(data)) > > in this case you can imagine that the the dorequest method knows how to > query a database (eg. some database is also imported), and that in this > instance it returns xml of the form: > > <users> > <user> > <id>1</id> > <name>john smith</name> > </user> > </users> > > unless it doesn't find the user, in which case it returns an error. the > logrequestdata function logs the url that was called and the data it was > passed. it might look like this: > > [Sun Sep 20 13:25:37 2009] [error] > ******************************************************** > [Sun Sep 20 13:25:37 2009] [error] (None, None, None, None, None, None, > '/site/python/site.py/login', 'user_name=user&user_pass=pass', None) > [Sun Sep 20 13:25:37 2009] [error] {'user_name': [Field('user_name', > 'user')], 'user_pass': [Field('user_pass', 'pass')]} > > based on this information you should be able to determine the proper url > to call and process the passed data. > > good luck > > john > > > Doug Epling wrote: > >> Sorry, but I really need a boost here. I might be dense, but I can >> not get a 'script.py' file with a greet(req, name) function to accept >> either POST or GET arguments. I am getting a 403 Forbidden server >> error. Where might I read about server side parameters? >> >> Thanks. >> >> Graham >> From james at sindacio.us Fri Nov 13 02:45:00 2009 >> From: james at sindacio.us (James Newton) >> Date: Fri Nov 13 02:45:10 2009 >> Subject: [mod_python] POST example? >> In-Reply-To: >> <c2f9e3c20911122342g58179609s1bb0046b24ac6240 at mail.gmail.com> >> References:<c2f9e3c20911122342g58179609s1bb0046b24ac6240 at mail.gmail.com> >> Message-ID:<c2f9e3c20911122345i3812ac58qc69974240f980a65 at mail.gmail.com> >> >> Hi, >> >> After looking around I can't seem to find a really straight forward >> example >> of how to POST, all I can seem to figure out is GET. Currently I'm >> trying to >> figure this out so I can post to a page with curl, rather then post via a >> form, after asking around and getting turned away with "don't use >> mod_python" on most occasions, I was hoping someone on this list could >> give >> me an example of how to post/store post data. >> >> Thanks, >> James Newton >> -------------- next part -------------- >> An HTML attachment was scrubbed... >> URL: >> http://mm_cfg_has_not_been_edited_to_set_host_domains/pipermail/mod_python/attachments/20091113/8048f618/attachment.html >> >> From graham.dumpleton at gmail.com Fri Nov 13 04:26:17 2009 >> From: graham.dumpleton at gmail.com (Graham Dumpleton) >> Date: Fri Nov 13 04:26:26 2009 >> Subject: [mod_python] POST example? >> In-Reply-To: >> <c2f9e3c20911122345i3812ac58qc69974240f980a65 at mail.gmail.com> >> References:<c2f9e3c20911122342g58179609s1bb0046b24ac6240 at mail.gmail.com> >> <c2f9e3c20911122345i3812ac58qc69974240f980a65 at mail.gmail.com> >> Message-ID:<88e286470911130126m21222b57v8270616a602069ce at mail.gmail.com> >> >> Read: >> >> http://webpython.codepoint.net/mod_python_tutorial >> >> First result for Google on 'mod_python tutorial'. >> >> Graham >> >> 2009/11/13 James Newton<james at sindacio.us>: >> >>> Hi, >>> After looking around I can't seem to find a really straight forward >>> >> example >> >>> of how to POST, all I can seem to figure out is GET. Currently I'm >>> >> trying to >> >>> figure this out so I can post to a page with curl, rather then post >>> >> via a >> >>> form, after asking around and getting turned away with "don't use >>> mod_python" on most occasions, I was hoping someone on this list >>> >> could give >> >>> me an example of how to post/store post data. >>> Thanks, >>> James Newton >>> >>> _______________________________________________ >>> Mod_python mailing list >>> Mod_python at modpython.org >>> http://mailman.modpython.org/mailman/listinfo/mod_python >>> >>> >>> >> From clodoaldo.pinto.neto at gmail.com Fri Nov 13 05:56:08 2009 >> From: clodoaldo.pinto.neto at gmail.com (Clodoaldo Neto) >> Date: Fri Nov 13 05:56:12 2009 >> Subject: Fwd: [mod_python] POST example? >> In-Reply-To: >> <a595de7a0911130107y1067a22exd498225e8aa4baf3 at mail.gmail.com> >> References:<c2f9e3c20911122342g58179609s1bb0046b24ac6240 at mail.gmail.com> >> <c2f9e3c20911122345i3812ac58qc69974240f980a65 at mail.gmail.com> >> <a595de7a0911130107y1067a22exd498225e8aa4baf3 at mail.gmail.com> >> Message-ID:<a595de7a0911130256i78bb0c99yce88dcbdca1c959f at mail.gmail.com> >> >> Forgot to post to the list. >> >> Clodoaldo >> >> ---------- Forwarded message ---------- >> From: Clodoaldo Neto<clodoaldo.pinto.neto at gmail.com> >> Date: 2009/11/13 >> Subject: Re: [mod_python] POST example? >> To: James Newton<james at sindacio.us> >> >> >> 2009/11/13 James Newton<james at sindacio.us>: >> >>> Hi, >>> After looking around I can't seem to find a really straight forward >>> >> example >> >>> of how to POST, all I can seem to figure out is GET. Currently I'm >>> >> trying to >> >>> figure this out so I can post to a page with curl, rather then post >>> >> via a >> >>> form, after asking around and getting turned away with "don't use >>> mod_python" on most occasions, I was hoping someone on this list >>> >> could give >> >>> me an example of how to post/store post data. >>> >> You mean you can read data posted by an html form and can't do it when >> it is posted by curl? If so show what is your curl code. >> >> If what you are looking for is how to read data posted by any means read: >> >> http://webpython.codepoint.net/mod_python_tutorial >> >> Regards, Clodoaldo >> >> >>> Thanks, >>> James Newton >>> >>> _______________________________________________ >>> Mod_python mailing list >>> Mod_python at modpython.org >>> http://mailman.modpython.org/mailman/listinfo/mod_python >>> >>> >>> >> From clodoaldo.pinto.neto at gmail.com Fri Nov 13 05:56:23 2009 >> From: clodoaldo.pinto.neto at gmail.com (Clodoaldo Neto) >> Date: Fri Nov 13 05:56:25 2009 >> Subject: Fwd: [mod_python] POST example? >> In-Reply-To: >> <c2f9e3c20911130153y4f16535bg2759654e7cf92c86 at mail.gmail.com> >> References:<c2f9e3c20911122342g58179609s1bb0046b24ac6240 at mail.gmail.com> >> <c2f9e3c20911122345i3812ac58qc69974240f980a65 at mail.gmail.com> >> <a595de7a0911130107y1067a22exd498225e8aa4baf3 at mail.gmail.com> >> <c2f9e3c20911130153y4f16535bg2759654e7cf92c86 at mail.gmail.com> >> Message-ID:<a595de7a0911130256i6c82a8c4o1dfb199726e12a73 at mail.gmail.com> >> >> ---------- Forwarded message ---------- >> From: James Newton<james at sindacio.us> >> Date: 2009/11/13 >> Subject: Re: [mod_python] POST example? >> To: clodoaldo.pinto.neto at gmail.com >> >> >> I may be misunderstanding it, I'm assuming POST and GET are handled >> the exact same way? The curl command would be like so: curl -F >> 'postvar=<-' http://url.tld/. I used the example on that website for a >> get var, but using it for post just created another get? I may not >> being reading into this right. >> James >> >> On Fri, Nov 13, 2009 at 3:07 AM, Clodoaldo Neto >> <clodoaldo.pinto.neto at gmail.com> wrote: >> >>> 2009/11/13 James Newton<james at sindacio.us>: >>> >>>> Hi, >>>> After looking around I can't seem to find a really straight >>>> >> forward example >> >>>> of how to POST, all I can seem to figure out is GET. Currently I'm >>>> >> trying to >> >>>> figure this out so I can post to a page with curl, rather then >>>> >> post via a >> >>>> form, after asking around and getting turned away with "don't use >>>> mod_python" on most occasions, I was hoping someone on this list >>>> >> could give >> >>>> me an example of how to post/store post data. >>>> >>> You mean you can read data posted by an html form and can't do it when >>> it is posted by curl? If so show what is your curl code. >>> >>> If what you are looking for is how to read data posted by any means >>> >> read: >> >>> http://webpython.codepoint.net/mod_python_tutorial >>> >>> Regards, Clodoaldo >>> >>> >>>> Thanks, >>>> James Newton >>>> >>>> _______________________________________________ >>>> Mod_python mailing list >>>> Mod_python at modpython.org >>>> http://mailman.modpython.org/mailman/listinfo/mod_python >>>> >>>> >>>> >> _______________________________________________ >> Mod_python mailing list >> Mod_python at modpython.org >> http://mailman.modpython.org/mailman/listinfo/mod_python >> >> >> >
|