මම කොහොමද කිරීමට හැකි තැපැල් සමග ඉල්ලීම දත්ත සම්පිණ්ඩක විධාන රේඛා මෙවලමක්?
මම කොහොමද කිරීමට හැකි තැපැල් සමග ඉල්ලීම දත්ත සම්පිණ්ඩක විධාන රේඛා මෙවලමක්?
Answers:
ක්ෂේත්ර සමඟ:
curl --data "param1=value1¶m2=value2" https://example.com/resource.cgi
තනි තනිව දක්වා ඇති ක්ෂේත්ර සමඟ:
curl --data "param1=value1" --data "param2=value2" https://example.com/resource.cgi
බහුපාර්ශ්වීය:
curl --form "fileupload=@my-file.txt" https://example.com/resource.cgi
ක්ෂේත්ර සහ බහු නාම සහිත බහුපාර්ශ්වික:
curl --form "fileupload=@my-file.txt;filename=desired-filename.txt" --form param1=value1 --form param2=value2 https://example.com/resource.cgi
දත්ත නොමැතිව:
curl --data '' https://example.com/resource.cgi
curl -X POST https://example.com/resource.cgi
curl --request POST https://example.com/resource.cgi
වැඩි විස්තර සඳහා CURL අත්පොත බලන්න . මෙම වෙබ් බ්රවුසරයක් ආදර්ශනය මත දත්ත සම්පිණ්ඩක නිබන්ධනය ප්රයෝජනවත් වේ.
Libcurl සමඟ, curl_formadd()ඔබේ පෝරමය සුපුරුදු ආකාරයෙන් ඉදිරිපත් කිරීමට පෙර එය ගොඩනඟා ගැනීමට ශ්රිතය භාවිතා කරන්න. වැඩි විස්තර සඳහා libcurl ප්රලේඛනය බලන්න .
විශාල ලිපිගොනු සඳහා, උඩුගත කිරීමේ ප්රගතිය පෙන්වීමට පරාමිතීන් එකතු කිරීම සලකා බලන්න:
curl --tr-encoding -X POST -v -# -o output -T filename.dat \
http://example.com/resource.cgi
මෙම -o outputඅවශ්ය වේ, වෙනත් ආකාරයකින් කිසිදු ප්රගතියක් තීරුව දිස් වනු ඇත.
With Fieldsකවදාද, කවදාද Multipartසහ කවදාද Without Data?
--dataඔබට භාවිතා කළ හැකිය -d.
XML අඩංගු RESTful HTTP POST සඳහා:
curl -X POST -d @filename.txt http://example.com/path/to/resource --header "Content-Type:text/xml"
හෝ JSON සඳහා, මෙය භාවිතා කරන්න:
curl -X POST -d @filename.txt http://example.com/path/to/resource --header "Content-Type:application/json"
මෙය නම් කරන ලද ගොනුවේ අන්තර්ගතය කියවා filename.txtතැපැල් ඉල්ලීම ලෙස යවනු ඇත.
curl -X POSTHTTP POST ඉල්ලීමක් ගම්ය කරයි, -dපරාමිතිය (දිගු අනුවාදය :) --dataපහත දැක්වෙන දේ POST පරාමිතීන් බව වක්රයට පවසන @filenameඅතර ගොනුවේ අන්තර්ගතය පරාමිතිය ලෙස නම් කරයි filename. ට්විටර්, ෆේස්බුක්, රූබි ඔන් රේල්ස් ඇතුළු විවිධ වෙබ් සේවාවන් මෙන්ම කූච් ඩීබී වැනි දත්ත සමුදායන්ගේ එච්ටීටීපී ඒපීඅයි හි ඇති පරිදි මෙම ප්රවේශය වඩාත් හොඳින් ක්රියාත්මක වේ. REST යන්නෙන් නියෝජනය වන්නේ රාජ්ය
-X POSTඑයින් ඇඟවෙන්නේ ඔබට එයින් ඉවත් විය හැකි බවයි -d.
සමඟ stdin වෙතින් දත්ත -d @-
උදාහරණයක්:
echo '{"text": "Hello **world**!"}' | curl -d @- https://api.github.com/markdown
ප්රතිදානය:
<p>Hello <strong>world</strong>!</p>
curl -d "name=Rafael%20Sagula&phone=3320780" http://www.where.com/guest.cgi
යනු Curl නිදර්ශන අත්පොතේ ඇති උදාහරණයයි .
ඉහත ක්රියා නොකරන්නේ නම් ඇම්පියර්සෑන්ඩ් සඳහා% 26 භාවිතා කරන්න:
curl -d "name=Rafael%20Sagula%26phone=3320780" http://www.where.com/guest.cgi
ඔබට වෙබ් අඩවියකට පිවිසීමට අවශ්ය නම්, පහත සඳහන් දේ කරන්න:
curl -d "username=admin&password=admin&submit=Login" --dump-header headers http://localhost/Login
curl -L -b headers http://localhost/
පළමු ඉල්ලීම "ශීර්ෂ" ගොනුවේ සැසි කුකිය (සාර්ථක පිවිසුමකින් ලබා දී ඇත) සුරකිනු ඇත. මෙතැන් සිට ඔබට බ්රව්සරයක් සමඟ ලොග් වූ පසු සාමාන්යයෙන් ප්රවේශ වන වෙබ් අඩවියේ ඕනෑම කොටසකට ඔබව සත්යාපනය කිරීමට එම කුකිය භාවිතා කළ හැකිය.
ඔබ කම්මැලි නම්, ඔබට සියලු වැඩ කටයුතු කිරීමට ගූගල්-ක්රෝම් හෝ ෆයර්ෆොක්ස් ලබා ගත හැකිය.
ක්රෝම් සියළුම ඉල්ලීම් දත්ත CURL සින්ටැක්ස් තුළ පිටපත් කරනු ඇත.
ඔබට යැවීමට අවශ්ය කුමන ආකාරයේ POST ඉල්ලීම මත පදනම්ව --data 'param1=hello¶m2=world'තනි -dහෝ -Fපරාමිතියක් භාවිතා කිරීමෙන් ඔබට වඩාත් කියවිය හැකි ක්රෝම් භාවිතා කරයි , එය ඒ අනුව application/x-www-form-urlencodedහෝ ඒ multipart/form-dataඅනුව විය හැකිය.
මෙය POST-ed ලෙස වනු ඇත application/x-www-form-urlencoded( ගොනු උඩුගත කිරීම් අඩංගු නොවන බහුතර ආකෘති සඳහා භාවිතා වේ ):
curl http://httpbin.org/post \
-H "User-Agent: Mozilla/2.2" \
-d param1=hello \
-d name=dinsdale
සඳහා multipart/form-dataතැපැල් භාවිතය -F( සාමාන්යයෙන් ගොනු උඩුගත කිරීම් අඩංගු රූපයන් සමග භාවිතා, හෝ ක්ෂේත්ර සඳහා වැදගත් වන, හෝ එකම නම සමඟ ක්ෂේත්ර කිහිපයක් අවශ්ය නොවේ ):
curl http://httpbin.org/post \
-H "User-Agent: Mozilla/2.2" \
-F param1=hello \
-F name=dinsdale \
-F name=piranha
මෙම User-Agentශීර්ෂ සාමාන්යයෙන් අවශ්ය නොවේ, නමුත් මම නඩුවේ දී එය වීසි කළා. ඔබට අභිරුචි නියෝජිතයෙකු අවශ්ය නම්, ~/.curlrcඋදා. අඩංගු ගොනුව නිර්මාණය කිරීමෙන් ඔබට සෑම ඉල්ලීමකටම එය සැකසීමෙන් වැළකී සිටිය හැකියUser-Agent: "Mozilla/2.2"
curl -v --data-ascii var=value http://example.com
තවත් බොහෝ විකල්ප ඇත, curl --helpවැඩි විස්තර සඳහා පරීක්ෂා කරන්න .
--data-urlencode(ඉරක් නැත), මෑත සංස්කරණවල අවම වශයෙන්