Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Posting on Qlik Community is temporarily paused for some users. Thank you for patience and we'll update you soon!
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

How to process Content-Type: application/x-www-form-urlencoded

Hi, all!

I got a service, which sends HTTP POST  messages with Content-Type: application/x-www-form-urlencoded such as:

Address: http://myserver:8090/services/My_Service
Encoding: UTF-8
Http-Method: POST
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
Headers: {connection=[keep-alive], Content-Length=[875], content-type=[application/x-www-form-urlencoded; charset=UTF-8], Host=[ym.ascgroup.ru:8090], Reverse-Via=[MWSTMG2], User-Agent=[Yandex.Money], X-Unilabel=[2093ba99-0009-5000-8000-0000205ad93c]}
Payload: orderSumAmount=10.00&cdd_exp_date=0118&shopArticleId=418496&paymentPayerCode=4100322062290&cdd_rrn=400650081402&external_id=deposit&paymentType=AC&requestDatetime=2017-04-27T12%3A42%3A32.314%2B03%3A00&depositNumber=oDqbu4k4JTkK0siDo8C4pI2l0mMZ.001f.201704&nst_eplPayment=true&cdd_response_code=00&cps_user_country_code=PL&orderCreatedDatetime=2017-04-27T12%3A42%3A32.235%2B03%3A00&sk=y801b97a6b7756752f0682deb659244d1&action=checkOrder&shopId=124531&scid=549915&shopSumBankPaycash=1003&shopSumCurrencyPaycash=10643&rebillingOn=false&orderSumBankPaycash=1003&cps_region_id=213&orderSumCurrencyPaycash=10643&merchant_order_id=70%2F12345678_270417113006_00000_124531&unilabel=2093ba99-0009-5000-8000-0000205ad93c&cdd_pan_mask=444444%7C4448&customerNumber=70%2F12345678&yandexPaymentId=2570084588069&invoiceId=2000001148959&shopSumAmount=9.71&md5=8E5D0A19A3515832030FAFCD72371DF5

 Which components i should use to process this messages and send response?

tESBProviderRequest and tRESTRequest can't process...

Regards,

 

 

Labels (3)
1 Solution

Accepted Solutions
Anonymous
Not applicable
Author

Hi, Mirko!

Thank you for response. I got another solution: route.

cHttp (as server) can perfectly handle incoming data and transfer it to cTalendJob

 

View solution in original post

3 Replies
Anonymous
Not applicable
Author

Hi,

Rest service usually expect JSON or XML payload, what you have here instead is the query string in the payload.

I think you have to parse them manually in a JavaRow component, using maybe the following class:

https://hc.apache.org/httpcomponents-client-ga/httpclient/apidocs/org/apache/http/client/utils/URLEn...)

and after map it in the field of the row element.

 

Regards,

Mirko

Anonymous
Not applicable
Author

Hi, Mirko!

Thank you for response. I got another solution: route.

cHttp (as server) can perfectly handle incoming data and transfer it to cTalendJob

 

Anonymous
Not applicable
Author

Hi,

nice solution, I was not thinking on route and Http component as server. I usually use it as client.

Thanks for sharing.

 

Regards,

Mirko