Curl GET 请求未在 body 中提供任何输出
Curl GET request is not giving any output in body
通过 Postman,我使用的 Api 是:-
在 header "AUTHTOKEN: XXXX-XXXX-XXXX-XXXX"
中使用 authtoken
当我通过邮递员发送获取请求时,我在响应中得到了我的证书body,这是正确的
现在我需要通过 curl 命令获取这个证书,所以我创建了这两个命令,但是当我执行它们时它们连接到服务器但是响应的 body 为空。
curl -g -k -v -X GET https://myCertManager.com/api/pik/restapt/MyCerts?INPUT_DATA={"operation":{"details"{"Cert_Name":"cert1"}}} -H "AUTHTOKEN: XXXX-XXXX-XXXX-XXXX"
curl -k -v -X GET https://myCertManager.com/api/pik/restapt/MyCerts -H "AUTHTOKEN: XXXX-XXXX-XXXX-XXXX" -d "INPUT_DATA={"操作":{"详细信息"{" =32=]":"cert1"}}}"
在 postman 中,如果它正常工作,您可以通过单击 [角落] 右侧的代码按钮生成等效的 curl 命令,它将为您创建 curl 代码片段
问题是因为 GET
参数不支持 -d
参数。所以这种代码永远行不通。
curl -k -v -X GET https://myCertManager.com/api/pik/restapt/MyCerts -H "AUTHTOKEN: XXXX-XXXX-XXXX-XXXX" -d "INPUT_DATA={"operation":{"details"{"Cert_Name":"cert1"}}}"
其次,GET
参数仅通过 url 本身发送数据,因此 INPUT_DATA
需要像这样 URL 本身
curl -g -k -v -X GET https://myCertManager.com/api/pik/restapt/MyCerts?INPUT_DATA={"operation":{"details"{"Cert_Name":"cert1"}}} -H "AUTHTOKEN: XXXX-XXXX-XXXX-XXXX"
但是 URL dosent 支持大括号和引号 {} ""
而我所做的是将 INPUT_DATA
转换为 URL
格式。所以实际的工作代码是这个。
curl -g -k -v -X GET https://myCertManager.com/api/pik/restapt/MyCerts?INPUT_DATA=%7B%22operation%22%3A%7B%22details%22%7B%22Cert_Name%22%3A%22cert1%22%7D%7D%7D -H "AUTHTOKEN: XXXX-XXXX-XXXX-XXXX"
通过 Postman,我使用的 Api 是:-
在 header "AUTHTOKEN: XXXX-XXXX-XXXX-XXXX"
当我通过邮递员发送获取请求时,我在响应中得到了我的证书body,这是正确的
现在我需要通过 curl 命令获取这个证书,所以我创建了这两个命令,但是当我执行它们时它们连接到服务器但是响应的 body 为空。
curl -g -k -v -X GET https://myCertManager.com/api/pik/restapt/MyCerts?INPUT_DATA={"operation":{"details"{"Cert_Name":"cert1"}}} -H "AUTHTOKEN: XXXX-XXXX-XXXX-XXXX"
curl -k -v -X GET https://myCertManager.com/api/pik/restapt/MyCerts -H "AUTHTOKEN: XXXX-XXXX-XXXX-XXXX" -d "INPUT_DATA={"操作":{"详细信息"{" =32=]":"cert1"}}}"
在 postman 中,如果它正常工作,您可以通过单击 [角落] 右侧的代码按钮生成等效的 curl 命令,它将为您创建 curl 代码片段
问题是因为 GET
参数不支持 -d
参数。所以这种代码永远行不通。
curl -k -v -X GET https://myCertManager.com/api/pik/restapt/MyCerts -H "AUTHTOKEN: XXXX-XXXX-XXXX-XXXX" -d "INPUT_DATA={"operation":{"details"{"Cert_Name":"cert1"}}}"
其次,GET
参数仅通过 url 本身发送数据,因此 INPUT_DATA
需要像这样 URL 本身
curl -g -k -v -X GET https://myCertManager.com/api/pik/restapt/MyCerts?INPUT_DATA={"operation":{"details"{"Cert_Name":"cert1"}}} -H "AUTHTOKEN: XXXX-XXXX-XXXX-XXXX"
但是 URL dosent 支持大括号和引号 {} ""
而我所做的是将 INPUT_DATA
转换为 URL
格式。所以实际的工作代码是这个。
curl -g -k -v -X GET https://myCertManager.com/api/pik/restapt/MyCerts?INPUT_DATA=%7B%22operation%22%3A%7B%22details%22%7B%22Cert_Name%22%3A%22cert1%22%7D%7D%7D -H "AUTHTOKEN: XXXX-XXXX-XXXX-XXXX"