2012年5月17日木曜日

groovyとmongolabのREST APIで、コレクション内のドキュメントを更新する

groovyとmongolabのREST APIで、コレクション内のドキュメントを更新するには、以下のコードを実行します。
@Grab(group='org.apache.httpcomponents', module='httpclient', version='4.1.3')
import org.apache.http.client.methods.*
import org.apache.http.impl.client.*
import org.apache.http.entity.*
import groovy.json.*

def apikey = "your-key"
def base = "https://api.mongolab.com/api/1"
def db = "mydb"
def col = "employee"
def doc_id = "your-document-id"
def json = new JsonBuilder()
json (
  '$set': ["name":"テスト2"]
)

def httpclient = new DefaultHttpClient()
def method = new HttpPut(
  "${base}/databases/${db}/collections/${col}/${doc_id}?apiKey=${apikey}")
method.setHeader("Content-Type", "application/json; charset=utf-8")
method.setEntity(new StringEntity(json.toString(), "UTF-8"))
response = httpclient.execute(method)

println response.getStatusLine().getStatusCode()
println response.getEntity().getContent().text

動作環境
groovy 1.8.6

関連情報
groovyとMongoDBのまとめ

0 件のコメント:

コメントを投稿