json文字列をwcfサービスに投稿しようとしています。問題は、私のWCFメソッドがJSONだけでなくStreamオブジェクトを想定していることです。
WCFのメソッドヘッダーは次のとおりです。
[WebInvoke(Method = "POST", UriTemplate = "person/delete", RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json)]
Person DeletePerson(Stream streamdata)
これが私が試していることです:
HttpPost request = new HttpPost(SERVICE_URI + uri);
InputStream is = new ByteArrayInputStream(data.getBytes());
InputStreamEntity ise = new InputStreamEntity(is, data.getBytes().length);
ise.setContentType("application/x-www-form-urlencoded");
ise.setContentEncoding(HTTP.UTF_8);
request.setEntity(ise);
HttpResponse response = null;
try {
response = client.execute(request);
} catch (ClientProtocolException e)
{
e.printStackTrace();
} catch (IOException e)
{
e.printStackTrace();
}
私はこれで400の悪い要求を受け取り、他のすべてを試しました。誰かが私がこれを機能させるのを手伝ってくれませんか!?また、カスタム認証コードを使用しているため、HttpClientを使用して実行する必要があります。