日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

windos下 curl命令使用

發布時間:2024/1/1 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 windos下 curl命令使用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

什么是curl命令?
curl是利用URL語法在命令行方式下工作的開源文件傳輸工具。它被廣泛應用在Unix、多種Linux發行版中,并且有DOS和Win32、Win64下的移植版本。
如何在windows下使用curl命令?
打開dos窗口(win+R 輸入cmd 打開)輸入 curl -V

現在使用的Windows10都默認已經安裝了該工具,如果沒有可以自己百度找下教程,本文不做詳細講解
curl 訪問百度 輸入curl www.baidu.com

常用參數如下

-a/--append 上傳文件時,附加到目標文件 -A/--user-agent <string> 設置用戶代理發送給服務器 - anyauth 可以使用“任何”身份驗證方法 -b/--cookie <name=string/file> cookie字符串或文件讀取位置 - basic 使用HTTP基本驗證 -B/--use-ascii 使用ASCII /文本傳輸 -c/--cookie-jar <file> 操作結束后把cookie寫入到這個文件中 -C/--continue-at <offset> 斷點續轉 -d/--data <data> HTTP POST方式傳送數據 --data-ascii <data> 以ascii的方式post數據 --data-binary <data> 以二進制的方式post數據 --negotiate 使用HTTP身份驗證 --digest 使用數字身份驗證 --disable-eprt 禁止使用EPRT或LPRT --disable-epsv 禁止使用EPSV -D/--dump-header <file> 把header信息寫入到該文件中 --egd-file <file> 為隨機數據(SSL)設置EGD socket路徑 --tcp-nodelay 使用TCP_NODELAY選項 -e/--referer 來源網址 -E/--cert <cert[:passwd]> 客戶端證書文件和密碼 (SSL) --cert-type <type> 證書文件類型 (DER/PEM/ENG) (SSL) --key <key> 私鑰文件名 (SSL) --key-type <type> 私鑰文件類型 (DER/PEM/ENG) (SSL) --pass <pass> 私鑰密碼 (SSL) --engine <eng> 加密引擎使用 (SSL). "--engine list" for list --cacert <file> CA證書 (SSL) --capath <directory> CA目錄 (made using c_rehash) to verify peer against (SSL) --ciphers <list> SSL密碼 --compressed 要求返回是壓縮的形勢 (using deflate or gzip) --connect-timeout <seconds> 設置最大請求時間 --create-dirs 建立本地目錄的目錄層次結構 --crlf 上傳是把LF轉變成CRLF -f/--fail 連接失敗時不顯示http錯誤 --ftp-create-dirs 如果遠程目錄不存在,創建遠程目錄 --ftp-method [multicwd/nocwd/singlecwd] 控制CWD的使用 --ftp-pasv 使用 PASV/EPSV 代替端口 --ftp-skip-pasv-ip 使用PASV的時候,忽略該IP地址 --ftp-ssl 嘗試用 SSL/TLS 來進行ftp數據傳輸 --ftp-ssl-reqd 要求用 SSL/TLS 來進行ftp數據傳輸 -F/--form <name=content> 模擬http表單提交數據 -form-string <name=string> 模擬http表單提交數據 -g/--globoff 禁用網址序列和范圍使用{}[] -G/--get 以get的方式來發送數據 -h/--help 幫助 -H/--header <line>自定義頭信息傳遞給服務器 --ignore-content-length 忽略的HTTP頭信息的長度 -i/--include 輸出時包括protocol頭信息 -I/--head 只顯示文檔信息 從文件中讀取-j/--junk-session-cookies忽略會話Cookie - 界面<interface>指定網絡接口/地址使用 - krb4 <級別>啟用與指定的安全級別krb4 -j/--junk-session-cookies 讀取文件進忽略session cookie --interface <interface> 使用指定網絡接口/地址 --krb4 <level> 使用指定安全級別的krb4 -k/--insecure 允許不使用證書到SSL站點 -K/--config 指定的配置文件讀取 -l/--list-only 列出ftp目錄下的文件名稱 --limit-rate <rate> 設置傳輸速度 --local-port<NUM> 強制使用本地端口號 -m/--max-time <seconds> 設置最大傳輸時間 --max-redirs <num> 設置最大讀取的目錄數 --max-filesize <bytes> 設置最大下載的文件總量 -M/--manual 顯示全手動 -n/--netrc 從netrc文件中讀取用戶名和密碼 --netrc-optional 使用 .netrc 或者 URL來覆蓋-n --ntlm 使用 HTTP NTLM 身份驗證 -N/--no-buffer 禁用緩沖輸出 -o/--output 把輸出寫到該文件中 -O/--remote-name 把輸出寫到該文件中,保留遠程文件的文件名 -p/--proxytunnel 使用HTTP代理 --proxy-anyauth 選擇任一代理身份驗證方法 --proxy-basic 在代理上使用基本身份驗證 --proxy-digest 在代理上使用數字身份驗證 --proxy-ntlm 在代理上使用ntlm身份驗證 -P/--ftp-port <address> 使用端口地址,而不是使用PASV -Q/--quote <cmd>文件傳輸前,發送命令到服務器 -r/--range <range>檢索來自HTTP/1.1或FTP服務器字節范圍 --range-file 讀取(SSL)的隨機文件 -R/--remote-time 在本地生成文件時,保留遠程文件時間 --retry <num> 傳輸出現問題時,重試的次數 --retry-delay <seconds> 傳輸出現問題時,設置重試間隔時間 --retry-max-time <seconds> 傳輸出現問題時,設置最大重試時間 -s/--silent靜音模式。不輸出任何東西 -S/--show-error 顯示錯誤 --socks4 <host[:port]> 用socks4代理給定主機和端口 --socks5 <host[:port]> 用socks5代理給定主機和端口 --stderr <file> -t/--telnet-option <OPT=val> Telnet選項設置 --trace <file> 對指定文件進行debug --trace-ascii <file> Like --跟蹤但沒有hex輸出 --trace-time 跟蹤/詳細輸出時,添加時間戳 -T/--upload-file <file> 上傳文件 --url <URL> Spet URL to work with -u/--user <user[:password]>設置服務器的用戶和密碼 -U/--proxy-user <user[:password]>設置代理用戶名和密碼 -v/--verbose -V/--version 顯示版本信息 -w/--write-out [format]什么輸出完成后 -x/--proxy <host[:port]>在給定的端口上使用HTTP代理 -X/--request <command>指定什么命令 -y/--speed-time 放棄限速所要的時間。默認為30 -Y/--speed-limit 停止傳輸速度的限制,速度時間'秒 -z/--time-cond 傳送時間設置 -0/--http1.0 使用HTTP 1.0 -1/--tlsv1 使用TLSv1(SSL) -2/--sslv2 使用SSLv2的(SSL) -3/--sslv3 使用的SSLv3(SSL) --3p-quote like -Q for the source URL for 3rd party transfer --3p-url 使用url,進行第三方傳送 --3p-user 使用用戶名和密碼,進行第三方傳送 -4/--ipv4 使用IP4 -6/--ipv6 使用IP6 -#/--progress-bar 用進度條顯示當前的傳送狀態

curl 命令可以進行一些常規的get/post方法訪問
例如
GET請求發送

curl http://127.0.0.1:8080/login?user=admin&passwd=12345678

POST 請求發送

-d 參數含義: HTTP POST方式傳送數據
這種方法是參數直接在header里面的

curl -d "user=admin&passwd=12345678" http://127.0.0.1:8080/login

如需將輸出指定到文件可以通過重定向進行操作.這種方法json數據直接在body里面的

curl -H "Content-Type:application/json" -X POST --data '{\"user\": \"admin\",\"passwd\":\"12345678\"}' http://localhost:8080/login

下午實踐操作的時候,系統報了這個問題

2021-05-24 17:45:54.668||http-nio-8080-exec-9||ERROR||http-nio-8080-exec-9raceId||com.gwh.product.ls.service.exceptionHandler.SelfCommonExceptionHandler||請求數據解析錯誤, url:/product/endorse, exception: org.springframework.http.converter.HttpMessageNotReadableException: JSON parse error: Unexpected character ('b' (code 98)): was expecting double-quote to start field name; nested exception is com.fasterxml.jackson.core.JsonParseException: Unexpected character ('b' (code 98)): was expecting double-quote to start field nameat [Source: (PushbackInputStream); line: 1, column: 3]

黑窗口提示:

C:\Users\gwh>curl -H "Content-Type: application/json" -X POST -d "{"body":{"data":"a3acd3224faf8073e2ce37d0aec0948e865f50e07f650b6c229eba3a377c6260417851e2afcf98bd0522a078d52f29897e8a3fe371806f65d860603955f80fd8e2542bba9cc053d23e3e87f7dab4b1870711725db2d6a6867e8df5a31932dee1c66855c108f171787a460d317021bfce7df8666b7886974b0fa15d8f741ae446e824a79f6c993efc6819fb738e891a97773e0126a1bdf05bf04f07afaad26e4a4b3f00e416bd44c37e89bf4700b761cccd914d3867485761494be4c098dd732a8770705d54906ceda8ff1c28e8f010bdf99e403ba0d9862be02fe3ca5abdce3b","sign":"5aafc6ef0344d3731e4972e57f6b549a"},"header":{"comId":"JXT","sendTime":"2021-05-24 16:55:59","uuid":"0f64bf2c-8f3c-40c5-9aab-f7b8c971bc06","version":"3"}}" http://localhost:8080/product/endorse curl: (3) [globbing] unmatched close brace/bracket in column 61 {"resultCode":"599997","resultMsg":"參數缺失或非法","body":null,"version":"1.0","timeStamp":1621849702796}

提示的示json解析問題,我把參數粘貼到json.con格式化里面反解析了一下,沒有問題,但是一訪問就提示解析問題

解決
我把參數都加了反斜杠,轉義符以后再調用就沒問題了

C:\Users\ext.gwh>curl -H "Content-Type: application/json" -X POST -d "{\"body\":{\"data\":\"a3acd3224faf8073e2ce37d0aec0948e865f50e07f650b6c229eba3a377c6260417851e2afcf98bd0522a078d52f29897e8a3fe371806f65d860603955f80fd8e2542bba9cc053d23e3e87f7dab4b1870711725db2d6a6867e8df5a31932dee1c66855c108f171787a460d317021bfce7df8666b7886974b0fa15d8f741ae446e824a79f6c993efc6819fb738e891a97773e0126a1bdf05bf04f07afaad26e4a4b3f00e416bd44c37e89bf4700b761cccd914d3867485761494be4c098dd732a8770705d54906ceda8ff1c28e8f010bdf99e403ba0d9862be02fe3ca5abdce3b\",\"sign\":\"5aafc6ef0344d3731e4972e57f6b549a\"},\"header\":{\"comId\":\"JXT\",\"sendTime\":\"2021-05-24 16:55:59\",\"uuid\":\"0f64bf2c-8f3c-40c5-9aab-f7b8c971bc06\",\"version\":\"3\"}}" http://localhost:8080/product/endorse {"header":{"version":"1.0","uuid":"0f64bf2c-8f3c-40c5-9aab-f7b8c971bc06","comId":"JXT","sendTime":"2021-05-24 16:55:59","responseTime":null,"responseCode":"500302","responseInfo":"無承保記錄"},"body":null}

總結

以上是生活随笔為你收集整理的windos下 curl命令使用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。