[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
http_url_encoder_addvar()
All,
This is my first attempt at posting data to a HTTP server and using
http_url_post_xml.
I believe my problem is that I'm getting an unexpected %09X inserted in
my field when using http_url_encoder_addvar().
Here's the related code:
tst2 D enc s like(HTTP_URL_ENCODER)
tst2 D encoded_data S *
tst2 D encoded_len S 10I 0
d xmlData s 65535a varying
tst2 // URL encode the data.
tst2 enc = http_url_encoder_new();
tst2 http_url_encoder_addvar_s(enc : 'service' : 'imessage_send');
tst2 http_url_encoder_addvar_s(enc : 'cid' : %trim(pUserID));
tst2 http_url_encoder_addvar_s(enc : 'pw' : %trim(pPassword));
tst2 http_url_encoder_addvar( enc
tst2 : 'xml'
tst2 : %addr(xmlData)
tst2 : %len(%trim(xmlData)) );
tst2 // Get a pointer to the URL encoded data.
tst2 http_url_encoder_getptr( enc
tst2 : encoded_data
tst2 : encoded_len);
rc = http_url_post_xml ( %trim(pAddress)
: encoded_data
: encoded_len
: *null
: %paddr(EndOfElement)
: *null
: HTTP_TIMEOUT
: HTTP_USERAGENT
: 'application/x-www-form-urlencoded');
tst2 http_url_encoder_free(enc);
In debug, the beginning of xmlData looks like:
<?xml version="1.0" encoding="ISO-8859-1"?><!DOCTYPE pnet_imessage_send
PUBLIC"-//PeopleNet//pnet_imessage_send""[1]http://open.peoplenetonline
.com/dtd/pnet_imessage_send.dtd">
The beginning of encoded_data looks like:
service=imessage_send&cid=1111&pw=password&xml=%09X%3C%3Fxml+version%3D
%221.0%22+encoding%3D%22ISO-8859-1%22%3F%3E
Am I correct in expecting it to look like this?
service=imessage_send&cid=1111&pw=password&xml=%3C%3Fxml+version%3D%221
.0%22+encoding%3D%22ISO-8859-1%22%3F%3E
Thanks in advance,
Donnie
References
1. http://open.peoplenetonline.com/dtd/pnet_imessage_send.dtd
HTTPAPI Ver 1.24 released 2012-01-23
OS/400 Ver V6R1M0
http_persist_open(): entered
http_long_ParseURL(): entered
DNS resolver retrans: 2
DNS resolver retry : 2
DNS resolver options: x'00000136'
DNS default domain: tmwsystems.com
DNS server found: 10.3.10.21
DNS server found: 8.8.8.8
DNS server found: 208.67.222.222
http_persist_post(): entered
http_persist_req(POST) entered.
http_long_ParseURL(): entered
do_oper(POST): entered
There are 0 cookies in the cache
POST /scripts/open.dll? HTTP/1.1
Host: open.peoplenetonline.com
User-Agent: http-api/1.24
Content-Type: application/x-www-form-urlencoded
Content-Length: 2089
senddoc(): entered
service=imessage_send&cid=1111&pw=password&xml=%09X%3C%3Fxml+version%3D%221.0%22+encoding%3D%22ISO-8859-1%22%3F%3E%3C!DOCTYPE+pnet_imessage_send+PUBLIC%22-%2F%2FPeopleNet%2F%2Fpnet_imessage_send%22%22http%3A%2F%2Fopen.peoplenetonline.com%2Fdtd%2Fpnet_imessage_send.dtd%22%3E%3Cpnet_imessage_send%3E%3Ccid%3E1111%3C%2Fcid%3E%3Cpw%3Epassword%3C%2Fpw%3E%3Cvehicle_number%3E1100687%3C%2Fvehicle_number%3E%3Cdeliver%3Enow%3C%2Fdeliver%3E%3Cformdata%3E%3Cform_id%3E55316%3C%2Fform_id%3E%3Cim_field%3E%3Cquestion_number%3Eq%23MechanicName%3C%2Fquestion_number%3E%3Cdata%3E%3Cdata_text%3EMater%3C%2Fdata_text%3E%3C%2Fdata%3E%3C%2Fim_field%3E%3Cim_field%3E%3Cquestion_number%3Eq%23Tractor%23%3C%2Fquestion_number%3E%3Cdata%3E%3Cdata_text%3E1100687%3C%2Fdata_text%3E%3C%2Fdata%3E%3C%2Fim_field%3E%3Cim_field%3E%3Cquestion_number%3Eq%23Trailer%23%3C%2Fquestion_number%3E%3Cdata%3E%3Cdata_text%3E1234%3C%2Fdata_text%3E%3C%2Fdata%3E%3C%2Fim_field%3E%3Cim_field%3E%3Cquestion_number%3Eq%23MechanicName%3C%2Fquestion_number%3E%3Cdata%3E%3Cdata_multiple-choice%3E%3Cmc_choicenum%3E1%3C%2Fmc_choicenum%3E%3Cmc_choicetext%3EYes%3C%2Fmc_choicetext%3E%3C%2Fdata_multiplechoice%3E%3C%2Fdata%3E%3C%2Fim_field%3E%3Cim_field%3E%3Cquestion_number%3Eq%23DriverName%3C%2Fquestion_number%3E%3Cdata%3E%3Cdata_text%3ESpeed+McQueen%3C%2Fdata_text%3E%3C%2Fdata%3E%3C%2Fim_field%3E%3Cim_field%3E%3Cquestion_number%3Eq%23DefectReported%3C%2Fquestion_number%3E%3Cdata%3E%3Cdata_text%3ERO%3A000000000118%2C+Defect%3ABrake+Connections%3C%2Fdata_text%3E%3C%2Fdata%3E%3C%2Fim_field%3E%3Cim_field%3E%3Cquestion_number%3Eq%23DefectResolution%3C%2Fquestion_number%3E%3Cdata%3E%3Cdata_text%3EDisassembled+and+replaced+seal%3C%2Fdata_text%3E%3C%2Fdata%3E%3C%2Fim_field%3E%3Cim_field%3E%3Cquestion_number%3Eq%23MechanicSignature%3C%2Fquestion_number%3E%3Cdata%3E%3Cdata_text%3EMater%3C%2Fdata_text%3E%3C%2Fdata%3E%3C%2Fim_field%3E%3Cim_field%3E%3Cquestion_number%3Eq%23MechanicDateTime%3C%2Fquestion_number%3E%3Cdata%3E%3Cdata_text%3E07%2F04%2F1776%3C%2Fdata_text%3E%3C%2Fdata%3E%3C%2Fim_field%3E%3C%2Fformdata%3E%3C%2Fpnet_imessage_sen
recvresp(): entered
HTTP/1.1 200 OK
Date: Sat, 30 Jun 2012 00:09:23 GMT
Server: Microsoft-IIS/6.0
Content-Type: text/html
Content-Length: 358
SetError() #13: HTTP/1.1 200 OK
recvresp(): end with 200
recvdoc parms: identity 358
header_load_cookies() entered
recvdoc(): entered
SetError() #0:
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE pnet_response PUBLIC "-//PeopleNet//pnet_response" "http://open.peoplenetonline.com/dtd/pnet_response.dtd">
<pnet_response><sendresult>failure</sendresult><error_message>XML failed to parse. The reported error was: File: . Line: 1 Col: 2 Error: Expected String: '<'
</error_message></pnet_response>
http_close(): entered
-----------------------------------------------------------------------
This is the FTPAPI mailing list. To unsubscribe, please go to:
http://www.scottklement.com/mailman/listinfo/ftpapi
-----------------------------------------------------------------------