PowerShell
रेस्टफुल एपीआई के साथ संचार करना
खोज…
परिचय
REST का अर्थ है प्रतिनिधि राज्य स्थानांतरण (कभी-कभी "ReST" वर्तनी)। यह एक स्टेटलेस, क्लाइंट-सर्वर, कैशेबल संचार प्रोटोकॉल पर निर्भर करता है और ज्यादातर HTTP प्रोटोकॉल का उपयोग किया जाता है। यह मुख्य रूप से वेब सेवाओं के निर्माण के लिए उपयोग किया जाता है जो हल्के, रखरखाव योग्य और स्केलेबल हैं। REST पर आधारित सेवा को RESTful सेवा कहा जाता है और इसके लिए जिन API का उपयोग किया जा रहा है, वे RESTful API हैं। PowerShell में, Invoke-RestMethod
का उपयोग उनसे निपटने के लिए किया जाता है।
इनकमिंग वेबहूक का उपयोग करें Slack.com
संभावित अधिक जटिल डेटा भेजने के लिए अपने पेलोड को परिभाषित करें
$Payload = @{ text="test string"; username="testuser" }
कॉल को निष्पादित करने के लिए ConvertTo-Json
cmdlet और Invoke-RestMethod
का उपयोग करें
Invoke-RestMethod -Uri "https://hooks.slack.com/services/yourwebhookstring" -Method Post -Body (ConvertTo-Json $Payload)
हिपचैट को संदेश पोस्ट करें
$params = @{
Uri = "https://your.hipchat.com/v2/room/934419/notification?auth_token=???"
Method = "POST"
Body = @{
color = 'yellow'
message = "This is a test message!"
notify = $false
message_format = "text"
} | ConvertTo-Json
ContentType = 'application/json'
}
Invoke-RestMethod @params
व्यक्तिगत डेटा प्राप्त करने और डालने के लिए PowerShell ऑब्जेक्ट के साथ REST का उपयोग करना
अपना REST डेटा प्राप्त करें और PowerShell ऑब्जेक्ट में संग्रहीत करें:
$Post = Invoke-RestMethod -Uri "http://jsonplaceholder.typicode.com/posts/1"
अपना डेटा संशोधित करें:
$Post.title = "New Title"
REST डेटा को वापस भेजें
$Json = $Post | ConvertTo-Json
Invoke-RestMethod -Method Put -Uri "http://jsonplaceholder.typicode.com/posts/1" -Body $Json -ContentType 'application/json'
कई वस्तुओं के लिए GET और POST के साथ PowerShell ऑब्जेक्ट के साथ REST का उपयोग करना
अपना REST डेटा प्राप्त करें और PowerShell ऑब्जेक्ट में संग्रहीत करें:
$Users = Invoke-RestMethod -Uri "http://jsonplaceholder.typicode.com/users"
अपने डेटा में कई आइटम संशोधित करें:
$Users[0].name = "John Smith"
$Users[0].email = "[email protected]"
$Users[1].name = "Jane Smith"
$Users[1].email = "[email protected]"
बाकी डेटा को वापस पोस्ट करें:
$Json = $Users | ConvertTo-Json
Invoke-RestMethod -Method Post -Uri "http://jsonplaceholder.typicode.com/users" -Body $Json -ContentType 'application/json'
आइटम हटाने के लिए PowerShell के साथ REST का उपयोग करना
उस आइटम को पहचानें जिसे हटाकर उसे हटाना है:
Invoke-RestMethod -Method Delete -Uri "http://jsonplaceholder.typicode.com/posts/1"