मैं एक JSON फ़ाइल पोस्ट करने के लिए नए invoke-restmethod cmdlet का उपयोग करने का प्रयास कर रहा हूं और सफलतापूर्वक ऐसा किया है। हालांकि, मुझे कर्सर का उपयोग करते समय वेबसर्वर से प्रतिक्रिया प्राप्त नहीं हुई है। जो मैं पूरा करने की कोशिश कर रहा हूं उसके लिए मुझे रिपोसेन से POST तक जानकारी लेने की आवश्यकता है और इसे किसी अन्य POST कमांड के लिए उपयोग करने की आवश्यकता है।पावरहेल v3 Invoke-RestMethod
क्या कोई बता सकता है कि मैं सर्वर से अपेक्षित प्रतिक्रिया कैसे प्राप्त कर सकता हूं? नीचे कर्ल में दो आदेश हैं, दूसरा Invoke-RestMethod का उपयोग कर। कर्ल कमांड सही पोस्ट करेगा और एक प्रतिक्रिया वापस करेगा। पावरहेल कमांड सही पोस्ट करेगा लेकिन प्रतिक्रिया वापस नहीं करेगा।
धन्यवाद
संपादित करें: मुख्य बात मेरा मानना है कि मैं ps उत्पादन से प्राप्त करने के लिए कोशिश कर रहा हूँ "प्रतिक्रिया हेडर" यानी है। एक कर्ल आदेश
< HTTP/1.1 201 Created
< Date: Thu, 26 Jul 2012 01:20:06 GMT
< Server: Apache
< X-EM7-Implemented-methods: GET,PUT,POST
< X-Powered-By: ScienceLogic,LLC - EM7 API/Integration Server
< Location: /ticket/321750
< X-EM7-status-message: ticket /ticket/321750 added.
< X-EM7-status-code: CREATED
< Content-Length: 830
< Content-Type: application/json
<
कर्ल कमान
curl -f -v -s -k --no-sessionid -H X-em7-beautify-response:1 -H content- type:application/json https://URLHERE --data-binary @jsonfile.json
Powershell कोड
$cert=New-Object System.Security.Cryptography.X509Certificates.X509Certificate2("certfile.crt")
$json = Get-Content jsonfile.json
$cred = Get-Credential -Message "Enter Credentials"
Invoke-RestMethod -Uri https://URLHERE -Credential $cred -Body $json -Certificate $cert -ContentType application/json -Method POST
दस्तावेज़ कहते हैं कि यह cmdlet परिणामों को स्वचालित रूप से पाइपलाइन के नीचे भेजना है जबतक कि आप '-उटफाइल पथ-टू-फ़ाइल' निर्दिष्ट नहीं करते हैं। यह भी दावा करता है कि cmdlet XmlDocument, HtmlWebResponseObject और स्ट्रिंग आउटपुट करता है। यह स्पष्ट रूप से ऐसा लगता है कि यह काम करना चाहिए। मैं '-OutFile c: \ response.txt' का उपयोग एक संभावित कार्य के रूप में करने का प्रयास करूंगा। अगर यह काम नहीं करता है, तो मैं कहूंगा कि यह एक बग फाइल करने का समय है। बीटीडब्ल्यू, जो आप वी 3 का निर्माण कर रहे हैं? –
मुझे लगता है कि मैंने अपना प्रश्न गलत तरीके से बताया होगा। मैं वास्तव में powerhell कमांड से आउटपुट प्राप्त कर रहा हूं, लेकिन मुझे कर्ल कमांड आउटपुट की हर चीज नहीं मिल रही है। सबसे विशेष रूप से अनुरोध हेडर। मैं ऊपर अपना प्रश्न बहाल करूंगा। – floyd
आपको क्या उत्पादन मिलता है? '| के माध्यम से आउटपुट चलाने का प्रयास करें यह देखने के लिए गेट-सदस्य 'कि आप किस प्रकार की ऑब्जेक्ट प्राप्त कर रहे हैं। ध्यान रखें कि डिफ़ॉल्ट रूप से, PowerShell हमेशा किसी ऑब्जेक्ट पर उपलब्ध सभी जानकारी प्रदर्शित नहीं करता है। –