cancel
Showing results for 
Search instead for 
Did you mean: 

HTTP Post Method

Former Member
0 Kudos

Hi experts,

Here my scenario is ABAP proxy to PI to HTTP.

I am sending the data via proxy to PI. From PI data sent to the third party using below url using (here PI need post the data using below Url then Pi will get the response)

https://developer.skipjackic.com/scripts/evolvcc.dll?AuthorizeAPI

Via HTTP Receiver adapter I am able to send the data but I am getting generic response.

Then posted data with client provided sample webpage. Here I am getting proper(actual) response.

Here my question is HTTP will allow you to post the data using URL? If yes what kind of configuration I need to do in receiver adapter?

Thanks

Srini..

Accepted Solutions (1)

Accepted Solutions (1)

markangelo_dihiansan
Active Contributor
0 Kudos

Hello,

Here my question is HTTP will allow you to post the data using URL? If yes what kind of configuration I need to do in receiver adapter?

We had the same scenario before and I was told by a colleague that in HTTP Get, you put the parameters in the query string. For HTTP Post, the parameters are placed in a body. Experts, please correct me if I'm wrong In PI, the HTTP Body is prologxmlpayloadepilog, so you might need to override the body (via XSLT or Java Mapping) before being able to post to that URL and get the correct response.

PS: You also need to watchout for URL escaping.

Hope this helps,

Mark

Edited by: Mark Dihiansan on Feb 10, 2011 10:01 AM

stefan_grube
Active Contributor
0 Kudos

> We had the same scenario before and I was told by a colleague that in HTTP Get, you put the parameters in the query string. For HTTP Post, the parameters are placed in a body. Experts, please correct me if I'm wrong

In HTTP post, you can put also parameters in Query string, and it is possible to use HTTP header fields.

HTTP is very generic and you need to know what HTTP message is requested. Sometimes it is just an XML payload, sometimes it is a complex MIME.

In other words: HTTP post can be anything.

Former Member
0 Kudos

Hi stefan,

Thank you for your quick replay.

I am sending the below data to receiver system via url.

<?xml version="1.0" encoding="utf-8"?><n0:MT_OU043_CreditCardPaymentRequest_OUT xmlns:n0="http://lawsonproducts.com/FI/OU043_CreditCardPayments" xmlns:prx="urn:sap.com:proxy:ECD:/1SAI/TXS2303B401B3EFBAEDC88B:700:2009/02/10"><CreditcardPaymentRequest><SerialNumber>000014661324</SerialNumber><DeveloperSerialNumber>464787130566</DeveloperSerialNumber><SJName>Schlumberger</SJName><StreetAddress>10 Elm Street</StreetAddress><City>League City</City><State>TX</State><ZiPCode>77573</ZiPCode><Country>US</Country><Phone>778523</Phone><ShipToName>Schlumberger</ShipToName><ShipToStreetAddress>10 Elm Street</ShipToStreetAddress><ShipToCity>League City</ShipToCity><ShipToState>TX</ShipToState><ShipToZipCode>77573</ShipToZipCode><ShipToCountry>US</ShipToCountry><ShipToPhone>778523</ShipToPhone><OrderNumber>0000000326</OrderNumber><OrderDescription>Lawson Standard Order</OrderDescription><AccountNumber>4445999922225</AccountNumber><Month>12</Month><Year>20</Year><CVVNumber>1212</CVVNumber><TransactionAmount> 100.00</TransactionAmount><CustomerTax> 5.28</CustomerTax><CustomerCode>0010000002</CustomerCode><PurchaseOrderNumber>CC CARD</PurchaseOrderNumber><InvoiceNumber>9300000036</InvoiceNumber><ShippingAmount> 0</ShippingAmount><UniqueVatInvoiceNumber>0</UniqueVatInvoiceNumber><VatTaxAmount>0</VatTaxAmount><VatTaxRate>0</VatTaxRate><CustomerVatNumber>1</CustomerVatNumber><DutyAmount></DutyAmount><SummaryCommodityCode>3926</SummaryCommodityCode><NationalTax>0</NationalTax><DiscountAmount>0</DiscountAmount><OrderString></OrderString><orderstring_lvl3>10nastener 1" with threaded ends65.991.000EA00392600000||</orderstring_lvl3></CreditcardPaymentRequest></n0:MT_OU043_CreditCardPaymentRequest_OUT>

But this data is not reaching to the receiver system via URL. PI hitting the receiver system without data.

Because of this reason I am getting generic response in place of actual response.

My question is why data is missing while sending the data from PI to receiver system. But I am sending the request data from PI. I am able to see the request data in SXMB_MONI

Edited by: srinivasreddy p on Feb 10, 2011 11:02 AM

Former Member
0 Kudos

Thank you for your quick replay.

I am sending the below data to receiver system via url.

<?xml version="1.0" encoding="utf-8"?><n0:MT_OU043_CreditCardPaymentRequest_OUT xmlns:n0="http://lawsonproducts.com/FI/OU043_CreditCardPayments" xmlns:prx="urn:sap.com:proxy:ECD:/1SAI/TXS2303B401B3EFBAEDC88B:700:2009/02/10"><CreditcardPaymentRequest><SerialNumber>000014661324</SerialNumber><DeveloperSerialNumber>464787130566</DeveloperSerialNumber><SJName>Schlumberger</SJName><StreetAddress>10 Elm Street</StreetAddress><City>League City</City><State>TX</State><ZiPCode>77573</ZiPCode><Country>US</Country><Phone>778523</Phone><ShipToName>Schlumberger</ShipToName><ShipToStreetAddress>10 Elm Street</ShipToStreetAddress><ShipToCity>League City</ShipToCity><ShipToState>TX</ShipToState><ShipToZipCode>77573</ShipToZipCode><ShipToCountry>US</ShipToCountry><ShipToPhone>778523</ShipToPhone><OrderNumber>0000000326</OrderNumber><OrderDescription>Lawson Standard Order</OrderDescription><AccountNumber>4445999922225</AccountNumber><Month>12</Month><Year>20</Year><CVVNumber>1212</CVVNumber><TransactionAmount> 100.00</TransactionAmount><CustomerTax> 5.28</CustomerTax><CustomerCode>0010000002</CustomerCode><PurchaseOrderNumber>CC CARD</PurchaseOrderNumber><InvoiceNumber>9300000036</InvoiceNumber><ShippingAmount> 0</ShippingAmount><UniqueVatInvoiceNumber>0</UniqueVatInvoiceNumber><VatTaxAmount>0</VatTaxAmount><VatTaxRate>0</VatTaxRate><CustomerVatNumber>1</CustomerVatNumber><DutyAmount></DutyAmount><SummaryCommodityCode>3926</SummaryCommodityCode><NationalTax>0</NationalTax><DiscountAmount>0</DiscountAmount><OrderString></OrderString><orderstring_lvl3>10nastener 1" with threaded ends65.991.000EA00392600000||</orderstring_lvl3></CreditcardPaymentRequest></n0:MT_OU043_CreditCardPaymentRequest_OUT>

But this data is not reaching to the receiver system via URL. PI hitting the receiver system without data.

Because of this reason I am getting generic response in place of actual response.

My question is why data is missing while sending the data from PI to receiver system. But I am sending the request data from PI. I am able to see the request data in SXMB_MONI

Edited by: srinivasreddy p on Feb 10, 2011 11:02 AM

Former Member
0 Kudos

How did you verify "PI hitting the receiver system without data." ? If you see the data in SXMB_MONI, its quite probable that PI sends that data, if you use an HTTP receiver channel.

Maybe there is an issue with authorization, or the receiver system cannot handle the message structure. What is the exact response code and text of the receiver system ?

CSY

Former Member
0 Kudos

Hi,

Pi system sending below format

<?xml version="1.0" encoding="utf-8"?><n0:MT_OU043_CreditCardPaymentRequest_OUT xmlns:n0="http://lawsonproducts.com/FI/OU043_CreditCardPayments" xmlns:prx="urn:sap.com:proxy:ECD:/1SAI/TXS2303B401B3EFBAEDC88B:700:2009/02/10"><CreditcardPaymentRequest><SerialNumber>000014661324</SerialNumber><DeveloperSerialNumber>464787130566</DeveloperSerialNumber><SJName>Joe's Garage</SJName<StreetAddress>1234 jackson Heights</StreetAddress><City>San Francisco</City><State>CA</State><ZiPCode>94116</ZiPCode><Phone>123456737</Phone><ShipToState></ShipToState><ShipToZipCode></ShipToZipCode><ShipToCountry></ShipToCountry><ShipToPhone></ShipToPhone><OrderNumber>0000000569</OrderNumber><AccountNumber>4622254111005123</AccountNumber><Month>12</Month><Year>20</Year><TransactionAmount> 10.00</TransactionAmount><CustomerTax></CustomerTax><CustomerCode></CustomerCode><PurchaseOrderNumber></PurchaseOrderNumber><ShippingAmount></ShippingAmount><UniqueVatInvoiceNumber></UniqueVatInvoiceNumber><VatTaxAmount></VatTaxAmount><VatTaxRate></VatTaxRate><CustomerVatNumber></CustomerVatNumber><DutyAmount></DutyAmount><SummaryCommodityCode></SummaryCommodityCode><NationalTax></NationalTax><DiscountAmount></DiscountAmount><OrderString>000010Fastener 1" with threaded ends45.001.000Y~||</OrderString><orderstring_lvl3></orderstring_lvl3></CreditcardPaymentRequest></n0:MT_OU043_CreditCardPaymentRequest_OUT>

*But Receiver system expecting below format.

*<!Fixed Values> <FORM NAME="sampleauthorization" ACTION="https://developer.skipjackic.com/scripts/EvolvCC.dll?AuthorizeAPI" METHOD=POST> <INPUT NAME="serialnumber" VALUE="999888777666"> <!Card Holder Data> <INPUT NAME="sjname" VALUE=u201DJohn Doe"> <INPUT NAME="streetaddress" VALUE="123 Demo Street"> <INPUT NAME="city" VALUE="Cincinnati"> <INPUT NAME="state" VALUE="OH"> <INPUT NAME="zipcode" VALUE="12345"> <INPUT NAME="shiptophone" VALUE="9024319977"> Purchase Data> <INPUT NAME="ordernumber" VALUE="ABC123"> <INPUT NAME="orderstring" VALUE="1Sample Order1.001N~||"> <INPUT NAME="transactionamount" VALUE="1.00"> <!Credit Card Data--> <INPUT NAME="accountnumber" VALUE="4111111111111111"> <INPUT NAME="month" VALUE="08"> <INPUT NAME="year" VALUE="09">

Whhat i ahve to do

Answers (1)

Answers (1)

stefan_grube
Active Contributor
0 Kudos

> Via HTTP Receiver adapter I am able to send the data but I am getting generic response.

I do not understand this. What is your issue?

Former Member
0 Kudos

>

> > Via HTTP Receiver adapter I am able to send the data but I am getting generic response.

>

> I do not understand this. What is your issue?

He confused me too...

Former Member
0 Kudos

Hi stefan,

Thank you for your quick replay.

I am sending the below data to receiver system vai url.

PI hitting the recevier system. but the url without data. Actually i am sending the data from ECC via proxy.

so, here I am getting generic responce not actula responce problem is posting url don't have the data.

how to overcome this please let me know.

Thank you

aashish_sinha
Active Contributor
0 Kudos

Hi Srinivas,

If you are sending some file data using proxy, can you use a file adapter for that. If yes, then i can give you one solution for this.

Make solution as File - PI - HTTP.. if you prepare this scenario i will give you a solution as you require.

Regards

Aashish Sinha