GoCD POST 请求 return "The resource you requested was not found!"
GoCD POST requests return "The resource you requested was not found!"
我有 GoCD 实例,想使用 GoCD 自动执行常规操作,例如安排管道和检查管道状态 API。
当我执行 GET 请求时它有效:
curl 'https://gocd.demo.kagarlickij.com/go/api/pipelines/frankenstein/status' \
-u 'kagarlickij:Pa$$w0rd' | jq
..但是当我 POST 请求它时 returns "The resource you requested was not found!":
curl 'https://gocd.demo.kagarlickij.com/go/api/pipelines/frankenstein/pause' \
-u 'kagarlickij:Pa$$w0rd' \
-H 'Accept: application/vnd.go.cd.v1+json' -H 'Content-Type: application/json' \
-X POST -d '{"pause_cause": "Investigating build failures"}' | jq
..另一个 POST 示例:
curl 'https://gocd.demo.kagarlickij.com/go/api/pipelines/frankenstein/schedule' \
-u 'kagarlickij:P@$$w0rd' \
-H 'Accept: application/vnd.go.cd.v1+json' -H 'Content-Type: application/json' \
-X POST -d @gocd.json | jq
json内容:
{
"environment_variables": {},
"materials": {},
"update_materials_before_scheduling": false
}
知道如何使用 API 启动管道吗?
一些 GoCD API 调用 require 'Confirm': 'true'
header。
在你的情况下,你可以像这样尝试 运行 curl:
curl 'https://gocd.demo.kagarlickij.com/go/api/pipelines/frankenstein/pause' \
-u 'kagarlickij:Pa$$w0rd' \
-H 'Accept: application/vnd.go.cd.v1+json' \
-H 'Content-Type: application/json' \
-H 'Confirm: true' \
-X POST -d '{"pause_cause": "Investigating build failures"}' | jq
我可以为 GoCD 推荐我的库 yagocd,它解决了版本不兼容问题并使使用 GoCD API 更容易。
答案非常简单 - API 操作需要 GoCD v18.2.0 但我有 v18.0.0
升级后 API 调用按预期工作
我有 GoCD 实例,想使用 GoCD 自动执行常规操作,例如安排管道和检查管道状态 API。
当我执行 GET 请求时它有效:
curl 'https://gocd.demo.kagarlickij.com/go/api/pipelines/frankenstein/status' \
-u 'kagarlickij:Pa$$w0rd' | jq
..但是当我 POST 请求它时 returns "The resource you requested was not found!":
curl 'https://gocd.demo.kagarlickij.com/go/api/pipelines/frankenstein/pause' \
-u 'kagarlickij:Pa$$w0rd' \
-H 'Accept: application/vnd.go.cd.v1+json' -H 'Content-Type: application/json' \
-X POST -d '{"pause_cause": "Investigating build failures"}' | jq
..另一个 POST 示例:
curl 'https://gocd.demo.kagarlickij.com/go/api/pipelines/frankenstein/schedule' \
-u 'kagarlickij:P@$$w0rd' \
-H 'Accept: application/vnd.go.cd.v1+json' -H 'Content-Type: application/json' \
-X POST -d @gocd.json | jq
json内容:
{
"environment_variables": {},
"materials": {},
"update_materials_before_scheduling": false
}
知道如何使用 API 启动管道吗?
一些 GoCD API 调用 require 'Confirm': 'true'
header。
在你的情况下,你可以像这样尝试 运行 curl:
curl 'https://gocd.demo.kagarlickij.com/go/api/pipelines/frankenstein/pause' \
-u 'kagarlickij:Pa$$w0rd' \
-H 'Accept: application/vnd.go.cd.v1+json' \
-H 'Content-Type: application/json' \
-H 'Confirm: true' \
-X POST -d '{"pause_cause": "Investigating build failures"}' | jq
我可以为 GoCD 推荐我的库 yagocd,它解决了版本不兼容问题并使使用 GoCD API 更容易。
答案非常简单 - API 操作需要 GoCD v18.2.0 但我有 v18.0.0
升级后 API 调用按预期工作