使用访问令牌的 Splunk 保存搜索的 Http get 方法
Http get method for Splunk saved search using access token
如果我们通过访问令牌访问保存的搜索数据,正确的 HTTP get 请求调用语法是什么?
我的 curl 命令有效,但 http.get 无效。
curl 命令:
#os.system('curl -H "Authorization: Bearer <token>"
<baseurl>:8089/services/search/jobs/export --data search="savedsearch abc_backup_status" -d output_mode=csv')
请求调用:::
BASE_URL = '<baseurl>:8089/services/search/jobs/export'
data = {"search":"savedsearch abc_backup_status"}
headers = {'Authorization': "Bearer <token>"}
auth_response = requests.get(BASE_URL, headers=headers, data = data, verify=False)
这给出了 400 个错误。
curl 选项 -d
或 --data
默认使用 POST
方法。
发件人:https://man7.org/linux/man-pages/man1/curl.1.html
-d, --data <data>
(HTTP MQTT) Sends the specified data in a POST request to
the HTTP server, in the same way that a browser does when
a user has filled in an HTML form and presses the submit
button. This will cause curl to pass the data to the
server using the content-type application/x-www-form-
urlencoded. Compare to -F, --form.
有趣的是,Splunk Docs claim search/jobs/export
需要一个 GET,但你正在创建一个立即导出的作业,这感觉就像一个 POST 类型的操作。
我还注意到您的搜索以 savedsearch 命令开始,如果这是定期安排的 savedsearch,您可能需要 GET saved/searches/{name}/history
以获取最后执行的 SID,然后是结果或事件端点已经执行的作业,而不是新的搜索....但这是一个用例问题
如果我们通过访问令牌访问保存的搜索数据,正确的 HTTP get 请求调用语法是什么?
我的 curl 命令有效,但 http.get 无效。
curl 命令:
#os.system('curl -H "Authorization: Bearer <token>"
<baseurl>:8089/services/search/jobs/export --data search="savedsearch abc_backup_status" -d output_mode=csv')
请求调用:::
BASE_URL = '<baseurl>:8089/services/search/jobs/export'
data = {"search":"savedsearch abc_backup_status"}
headers = {'Authorization': "Bearer <token>"}
auth_response = requests.get(BASE_URL, headers=headers, data = data, verify=False)
这给出了 400 个错误。
curl 选项 -d
或 --data
默认使用 POST
方法。
发件人:https://man7.org/linux/man-pages/man1/curl.1.html
-d, --data <data> (HTTP MQTT) Sends the specified data in a POST request to the HTTP server, in the same way that a browser does when a user has filled in an HTML form and presses the submit button. This will cause curl to pass the data to the server using the content-type application/x-www-form- urlencoded. Compare to -F, --form.
有趣的是,Splunk Docs claim search/jobs/export
需要一个 GET,但你正在创建一个立即导出的作业,这感觉就像一个 POST 类型的操作。
我还注意到您的搜索以 savedsearch 命令开始,如果这是定期安排的 savedsearch,您可能需要 GET saved/searches/{name}/history
以获取最后执行的 SID,然后是结果或事件端点已经执行的作业,而不是新的搜索....但这是一个用例问题