2016-12-24 4 views
0

アドホックdiffツールとしてgist APIを使用しようとしています。これを行うには、いくつかのテキストを要点にアップロードし、それを更新してdiffを表示したいと思います。何らかの理由で私は "{\"message\":\"Not Found\",\"documentation_url\":\"https://developer.github.com/v3\"}"という結果になっています。私はURLを見るとGISTをうまく見ることができるように少し混乱しています。作成した直後に要点を更新することはできません

uri = URI("https://api.github.com/gists") 

first_payload = { 
    'description' => "My test gist", 
    'public' => true, 
    'files' => { 
     'change.yml' => { 
      'content' => "before" 
     } 
    } 
} 

req = Net::HTTP::Post.new(uri.path) 
req.body = first_payload.to_json 
req.basic_auth("username", "password") 
res = Net::HTTP.start(uri.hostname, uri.port, :use_ssl => true) do |http| 
    http.request(req) 
end 

second_uri = URI(JSON.parse(res.body)["url"]) 
second_payload = { 
    'description' => "My test gist", 
    'public' => true, 
    'files' => { 
     'change.yml' => { 
      'content' => ':after' 
     } 
    } 
} 

second_req = Net::HTTP::Put.new(second_uri.path) 
second_req.body = second_payload.to_json 
second_req.basic_auth("username", "password") 
second_res = Net::HTTP.start(second_uri.hostname, second_uri.port, :use_ssl => true) do |http| 
    http.request(second_req) 
end 

答えて

0

second_req = Net::HTTP::Patch.new(second_uri.path)はトリックをした次のように

私のコードがある

関連する問題