මම කොහොමද කිරීමට හැකි තැපැල් සමග ඉල්ලීම දත්ත සම්පිණ්ඩක විධාන රේඛා මෙවලමක්?
මම කොහොමද කිරීමට හැකි තැපැල් සමග ඉල්ලීම දත්ත සම්පිණ්ඩක විධාන රේඛා මෙවලමක්?
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 POST
HTTP 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
(ඉරක් නැත), මෑත සංස්කරණවල අවම වශයෙන්