Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
HTTP Post
#1
Dean, I was wondering if you or anyone else can help me with this:

##########################################################################################
# FUNCTION sendpost
# INPUT - outpost or inpost
# SENDS AN HTML POST TO CQC MASTER SERVER
# RETURNS - NOTHING
##########################################################################################
#
def sendpost(tosend,param):
        httpServ = httplib.HTTPConnection("10.0.1.8", 17942)
        httpServ.connect()

        if tosend == "outpost":
                httpServ.request('POST', '/VanOutRange?1=%s' % param)
                response = httpServ.getresponse()

        elif tosend == "inpost":
                httpServ.request('POST', '/VanInRange?1=%s' % param)
                response = httpServ.getresponse()

        httpServ.close()
# FUNCTION sendpost END
##########################################################################################

This is python code which sends a post to the CQC Html listener with one parameter. 

The parameter is read by the listener as CQCActParm_2. 

Works fine, but I'd like to send more than one parameter. I can't get the python code to work nor can I find any good examples on the net. 

I've tried various forms of: 

httpServ.request('POST', '/VanOutRange?1=%s' % param)

httpServ.request('POST', '/VanOutRange?1=%s2=%s2' % param % param2)

The latter fails with an error. 

Any idea what the right format might be?
Reply
#2
Keep in mind that the HTTP URL requires an ampersand between the parameters. So, assuming the last one above is correct, you would want to add an ampersand before the first 2.

httpServ.request('POST', '/VanOutRange?1=%s&2=%s2' % param % param2)

Of course ampersand may be a special character in Python, so you might have to escape it to get to be taken literally.
Dean Roddey
Explorans limites defectum
Reply
#3
(05-17-2018, 09:35 AM)Dean Roddey Wrote: Keep in mind that the HTTP URL requires an ampersand between the parameters. So, assuming the last one above is correct, you would want to add an ampersand before the first 2.

httpServ.request('POST', '/VanOutRange?1=%s&2=%s2' % param % param2)

Of course ampersand may be a special character in Python, so you might have to escape it to get to be taken literally.

 httpServ.request('POST', '/TempListener1?1=%s&2=%s' % param1&param2)

I tried this and it gives an error. 

Anything else you can see in there that I might try?
Reply
#4
BTW, that's a different program than the original code I sent you, but same idea.
Reply
#5
I know nothing about Python. Is there any way you can see the resulting text that youa re creating? I'm guessing that you don't want the ampersand in the right hand side. That's Python syntax over there. You need it on the left side because that's HTML syntax.
Dean Roddey
Explorans limites defectum
Reply
#6
(05-17-2018, 09:59 AM)Dean Roddey Wrote: I know nothing about Python. Is there any way you can see the resulting text that youa re creating? I'm guessing that you don't want the ampersand in the right hand side. That's Python syntax over there. You need it on the left side because that's HTML syntax.

Thanks Dean. 

I can't figure it out. I think that's an outdated way of sending HTML posts and so there aren't any examples. 

It's not a big deal.
Reply
#7
Maybe try GET instead of post. I'm don't know Python either but I've seen this work better elsewhere.
My Other web server is Dropbox.
Reply
#8
(05-18-2018, 06:14 AM)RichardU Wrote: Maybe try GET instead of post. I'm don't know Python either but I've seen this work better elsewhere.

Thanks Richard. 

Ill look into that.
Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  Curious About Usage Post Public Domain kblagron 18 3,390 11-01-2022, 08:01 AM
Last Post: karenlee
  Get Field Value via HTTP znelbok 3 1,544 06-11-2020, 03:43 PM
Last Post: Dean Roddey
  HTTP Trigger and Parameters znelbok 1 1,271 06-11-2020, 03:41 PM
Last Post: Dean Roddey
  HTTP SendPUT simplextech 3 1,799 01-21-2020, 03:05 PM
Last Post: simplextech
  CQC HTTP Events? bjkiller 26 10,099 01-11-2020, 07:27 AM
Last Post: simplextech
  Set value via HTTP Call simplextech 2 1,455 01-07-2020, 04:39 PM
Last Post: simplextech
  HTTP Trigger Driver - see trained URL's? Shaky 1 1,976 09-15-2019, 12:25 PM
Last Post: Dean Roddey
  HTTP Get driver not working znelbok 10 6,040 08-28-2018, 10:10 AM
Last Post: Dean Roddey
  Http Post zra 17 8,028 08-05-2018, 01:55 PM
Last Post: zra
  IFTT and HTTP Trigger parameter passing setup Shaky 5 4,949 03-09-2018, 10:20 PM
Last Post: Dean Roddey

Forum Jump:


Users browsing this thread: 1 Guest(s)