【发布时间】:2014-01-15 17:50:44
【问题描述】:
我对红宝石很陌生。老实说,这是我第一次尝试使用 http 连接编写 ruby 脚本。我一度迷失了方向。通过 POST 向 Jira6 发送数据。这是我使用的代码
# If issues_id.count != 0 make a transition of the issues
if issue_id.count > 0
issue_id.each do |id|
transition_data = '{"transition": {"id": "666"}}'
Net::HTTP.start(jira_domain, jira_port) do |http|
ap jira_transition + id + jira_transition_query
request = Net::HTTP::Post.new(jira_transition + id + jira_transition_query)
request.basic_auth jira_user, jira_pass
request["Content-Type"] = "application/json"
ap transition_data
request.set_form_data('data' => '{"transition": {"id": "841"}}');
response = http.request(request)
ap response.code
ap response
end
end
end
对此进行测试会导致以下错误:
#<Net::HTTPUnsupportedMediaType 415 Unsupported Media Type readbody=true> error.
当我尝试使用 curl 时,效果很好
curl -D- -u external_user:external_pass -X POST --data '{"transition": {"id": "841"}}' -H "Content-Type: application/json" http://jira.demo.com:80/rest/api/2/issue/17399/transitions\?expand\=transitions.fields
只是为了确保我不会像在 google 群组上那样得到相同的废话答案: 是的,我在成功尝试后重置了问题:-) 是的,transitionId 841 是正确的:-)
有人可以向我发送正确的方向如何将数据发送到 Jira6 REST-API 吗?我认为这是一个边际错误,但我不承认。 非常非常感谢你。
【问题讨论】: