ターミナルから正常に動作するこのcURLがありますが、動的である必要があるため、モデルからこの呼び出しを行う必要があります。
curl -XPUT -H "content-type:application/json" http://localhost:8098/riak/demo2 -d '{"props":{"precommit":[{"mod":"riak_search_kv_hook","fun":"precommit"}]}}'
これは私がこれまでに得たものですが、機能しておらず、エラーはなく、応答は空です。何も返されないと思いますが、これで新しいRiak
バケットが作成されるはずですが、そうではありません。私が言ったように、私は自分の端末でテストしました、そしてそれはうまく働きます、それは期待通りにバケツを作ります。
require "net/http"
require "uri"
uri = URI.parse("http://localhost:8098/riak/dg1_logs")
http = Net::HTTP.new(uri.host, uri.port)
request = Net::HTTP::Post.new(uri.request_uri)
request.content_type = "application/json"
request.body = '{"props":{"precommit":[{"mod":"riak_search_kv_hook","fun":"precommit"}]}}'
response = http.request(request)
p response.body
詳細
を使用していますが、クライアントバケットでRiak
を有効にする必要があります。このcURLを実行することのみが可能です。Riak Search
私はそれを動的にする必要があるので、クライアントが新しいアカウントを作成するとき、私はすでに彼のバケットを可能にしますSearch
Ruby1.9.3を使用しています