1

iriscouch.com に CouchDB データベースがあります。私はAndroidアプリに取り組んでいます。

Android からデータベースにドキュメントを作成するという単純な作業に行き詰まりました。これを簡単な方法で実行しようとしています (つまり、DroidCouch ライブラリを使用していません)。

注: HTTP POST 経由で CouchDB データベースを作成しようとしましたが (StackOverflow の他のトピックにあるように)、うまくいきました。

ここで私は私の仕事を中断しました:

public void postData2() {

        new Thread(new Runnable()
        {
            //Thread to stop network calls on the UI thread
            public void run() {
                // Create a new HttpClient and Post Header
                HttpClient httpclient = new DefaultHttpClient();
                HttpPost httppost = new HttpPost("http://2bm.iriscouch.com/test2");

                try {
                    System.out.println("Reaching CouchDB...");

                    // Add your data
                    List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);
                    nameValuePairs.add(new BasicNameValuePair("id", "12345"));
                    nameValuePairs.add(new BasicNameValuePair("stringdata", "Hi"));
                    httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));

                    // Execute HTTP Post Request
                    HttpResponse response = httpclient.execute(httppost);
                    System.out.println(response.toString());

                    System.out.println("Execurting HTTP Post...");
                    // Execute HTTP Post Request
                    ResponseHandler<String> responseHandler = new BasicResponseHandler();

                    String responseBody = httpclient.execute(httppost, responseHandler);

                    JSONObject responseJSON = new JSONObject(responseBody);
                    System.out.println("Response: " + responseJSON.toString());
                } catch (ClientProtocolException e) {
                    e.printStackTrace();
                    // TODO Auto-generated catch block
                } catch (IOException e) {
                    e.printStackTrace();
                    // TODO Auto-generated catch block
                } 
            }
        }).start();
    }

誰かが以前にこれを行ったことがあれば、助けていただければ幸いです。ありがとう。

4

1 に答える 1