當我在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