我正在通过此网址向github发送帖子请求:
https://api.github.com/gists/2710948/comments
理论上,这应该创建一个注释,文本由请求体中的内容组成。但是,当我尝试发布该帖子时,我收到404错误。这让我相信没有找到要点,但是,如果你在同一地址做了Get请求就可以了。
我需要做一个身份验证吗?我已经尝试在我的标题集中添加用户名和密码,但我不知道我是否使用了正确的格式。我试过通过Ruby,HTTP Client和curl来完成这项工作,并且我得到了同样的错误。
我正在使用的curl命令是:
curl -X POST -d "This is my sample comment" https://api.github.com/gists/2710948/comments
我认为如果我能让curl命令工作,我将能够找出HTTP客户端,然后找出Ruby。这将是我第一次尝试使用API,因此对于我来说,仔细检查并没有什么基础;所有建议都会有所帮助。
答案 0 :(得分:4)
curl -d '{ "body": "Test comment" }' -u "Username:Pass" -X POST https://api.github.com/gists/2710948/comments
Ruby代码:
require 'net/http'
uri = URI("https://api.github.com/gists/2710948/comments")
req = Net::HTTP::Post.new(uri.to_s)
req.basic_auth("Username", "Pass")
req.body = '{"body": "Test message"}' # `to_json` can be used
req["content-type"] = "application/json"
Net::HTTP.start(uri.host, uri.port, :use_ssl => true) do |http|
p response = http.request(req)
end