我正在尝试使用curl更新对象。
我正在尝试两种方法:
1]在补丁请求中提供usr / pswd
=>说“警告:您只能选择一个HTTP请求!”
2]首先保存登录cookie并使用它来执行补丁
用-I =>说“警告:您只能选择一个HTTP请求!”
没有-I => [{“message”:“会话已过期或无效”,“errorCode”:“INVALID_SESSION_ID”}]
以下是要求:
1]在补丁请求中提供usr / pswd
curl -I -H "Content-Type: application/json" -H "charset=UTF-8" -H "Accept: application/json" -X PATCH -d '{"field":"new_value"}' -D- 'https://url?un=<uname>&pw=<pwd>/<path to obj>/<key>' --trace-ascii trace.OUT
Warning: You can only select one HTTP request!
2]首先保存登录cookie并使用它来执行补丁
curl -c cookies.txt 'https://url?un=<uname>&pw=<pwd>'
curl -b cookies.txt -H "Content-Type: application/json" -H "charset=UTF-8" -H "Accept: application/json" -X PATCH -d '{"field":"new_value"}' -D- 'https://url/<path to obj>/<key>'
=>[{"message":"Session expired or invalid","errorCode":"INVALID_SESSION_ID"}]
curl **-I** cookies.txt -H "Content-Type: application/json" -H "charset=UTF-8" -H "Accept: application/json" -X PATCH -d '{"field":"new_value"}' -D- 'https://url/<path to obj>/<key>'
=> Warning: You can only select one HTTP request!
我们有一个可以使用UI执行补丁的工具,我检查了firebug中的请求/标题,看起来我在请求中包含了所有内容。但是我想编写这个电话的脚本。
有什么建议吗?
谢谢!
答案 0 :(得分:3)
“ - I”表示HEAD请求,但您指定了“PATCH”的HTTP方法。 Curl抱怨它不能同时做到这两点。