कर्ल को नॉन 200 HTTP स्टेटस मिलने पर बैश स्क्रिप्ट से बाहर निकलें


9

मेरे पास कुछ कर्ल अनुरोध करने के लिए एक bash स्क्रिप्ट सेटअप है

for currency in EUR INR JPY
do
  curl -i --data '{"currency": "'$currency'"}' -H "Accept: application/json" -H "Content-Type: application/json" http://0.0.0.0:8080/price && echo
done

क्या स्क्रिप्ट से बाहर निकलने का कोई तरीका है यदि कर्ल प्रतिक्रियाओं में से एक http स्थिति के साथ वापस आ गया है! = 200!

मैं भी मानक कर्ल आउटपुट रखना चाहता हूं, उदाहरण के लिए, मुझे ऐसा समाधान नहीं चाहिए जो केवल http स्थिति कोड प्रिंट करता हो।

चियर्स

जवाबों:


4

--fail, के रूप में उल्लेख किया है man पेज, काम करने के लिए लगता है:

$ curl --fail --location http://google.com/nope
$ echo $?
22

3
मैनपेज से, --fail कुछ कारणों से उपयुक्त नहीं है: १। Fail silently (no output at all), और २। This method is not fail-safe and there are occasions where non-successful response codes will slip through।
— Armand
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.