1

私はアンドロイドアプリケーションを持っています。WCF Web サービスにリクエストを送信したいと考えています。

サービスは次のとおりです。

[OperationContract]
Message submitData(Stream streamdata);



[WebInvoke(Method = "POST",
        RequestFormat = WebMessageFormat.Json,
        ResponseFormat = WebMessageFormat.Json,
       UriTemplate = "submitData")]

public Message submitData(Stream streamdata)
    {
        StreamReader reader = new StreamReader(streamdata);
        string jsonString = reader.ReadToEnd();
        reader.Close();
        reader.Dispose();
        return WebOperationContext.Current.CreateTextResponse(JsonSyncManager.submitVotes(jsonString), "application/json; charset=utf-8", Encoding.UTF8);
    }

Fiddler でサービスを試したところ、正しく機能していました。

ただし、私のアプリから次のことを試します

JSONObject j = new JSONObject();
j.put("voters", "test");


String url = "http://127.0.0.1:8733/Service/submitData";

HttpClient httpclient = new DefaultHttpClient();
HttpPost request = new HttpPost(url);

StringEntity s = new StringEntity(j.toString(), "UTF-8");

s.setContentType("application/json;charset=UTF-8");
request.setHeader("Accept", "application/json");
request.setHeader("Content-Type", "application/json; charset=utf-8");
request.setEntity(s);

HttpResponse response = httpclient.execute(request);

しかし、私は常に Bad request エラーを受け取ります。サービスに到達しません (ブレークポイントに入りません)。

問題が何であるか考えていますか?

ありがとう

4

1 に答える 1