2017-03-27 24 views
15

इससे पहले कि आप इसे डुप्लिकेट के रूप में पोस्ट करें; मैंने एसओ के आसपास पाए गए कई सुझावों का प्रयास किया है।कर्ल के साथ कच्चे शरीर के डेटा को कैसे पोस्ट करें?

अब तक मैं जावा वेब सेवा में डेटा पोस्ट करने के लिए पोस्टमैन का उपयोग कर रहा हूं। यही कारण है कि अच्छा काम करता है इस प्रकार है:

enter image description here

मैं अब एक ही कर्ल का उपयोग कर क्या करना चाहते हैं, तो मैं निम्न तरीकों का उपयोग कर इसे करने की कोशिश:

$ curl -X POST --data "this is raw data" http://78.41.xx.xx:7778/ 
$ curl -X POST --data-binary "this is raw data" http://78.41.xx.xx:7778/ 
$ curl -X POST --data "@/home/kramer65/afile.txt" http://78.41.xx.xx:7778/ 
$ curl -X POST --data-binary "@/home/kramer65/afile.txt" http://78.41.xx.xx:7778/ 

दुर्भाग्य से, उन सभी के लिए एक खाली कच्चे दिखाने प्राप्त करने वाले पक्ष पर शरीर।

क्या कोई जानता है कि मैं यहां क्या गलत कर रहा हूं? मेरे कर्नल अनुरोध मेरे डाकिया अनुरोध से अलग कैसे है? सभी सुझावों का स्वागत है!

उत्तर

16

--data सामग्री प्रकार को application/x-www-form-urlencoded पर सेट करेगा। आपका डाकिया अनुरोध डिफ़ॉल्ट रूप से Content-Type: text/plain उपयोग कर रहा है जब raw इनपुट का उपयोग:

curl -X POST -H "Content-Type: text/plain" --data "this is raw data" http://78.41.xx.xx:7778/ 

ध्यान दें कि आप डाकिया द्वारा भेजे गए पूर्ण अनुरोध देखना चाहते हैं, तो आप पैक एप्लिकेशन के लिए डीबग सक्षम कर सकते हैं। सभी निर्देशों के लिए this link देखें। * एक ही

enter image description here

+0

ऐसा लगता है कि हालांकि शरीर के अंग भेज दिया जाता है * वास्तव में: फिर आप अनुप्रयोग (डाकिया में सही-क्लिक) का निरीक्षण कर सकते हैं और network टैब में डाकिया से भेजे गए सभी अनुरोधों को देखना। यह सिर्फ एक हेडर बदलता है। –

संबंधित मुद्दे