linux curl請求時參數被截斷

當我在curl一個url時,發如今後端PHP環境使用xdebug時,只能捕獲第一個參數:php

curl test.baidu.com/oss/index.php?r=info/data/query&username=xxx&password=xxx
# 在後端url被截斷,只能捕獲到第一個參數
$_GET: array(1) r: "info/data/query"

這致使了個人認證失敗,沒法獲取正確的數據。shell

其實這裏的緣由是在shell 命令中&符號有特殊的含義,而並不僅是url參數的鏈接符。所以,咱們有兩種解決方法:後端

# 方法一:轉義,加上\符
curl test.baidu.com/oss/index.php?r=info/data/query\&username=xxx\&password=xxx
# 方法二:包裝,在url外加上引號,用字符串處理
curl 'test.baidu.com/oss/index.php?r=info/data/query&username=xxx&password=xxx'

從新測試,解決問題。curl

參考資料

  1. Linux curl get請求參數多個參數被截斷的解決方法:https://blog.csdn.net/top_cod...
相關文章
相關標籤/搜索