私は Web サービス、特に WCF にかなり慣れていないので、ご容赦ください。
ユーザー名、apikey、いくつかのオプションなどのパラメーターをいくつか取る API を作成していますが、操作してストリームとして返す数千語の文字列も送信する必要があります。クエリ文字列に入れるだけでは意味がなかったので、メッセージ本文をサービスに POST するだけでよいと考えました。
これを行う簡単な方法はないようです...
私の操作契約は次のようになります
[OperationContract]
[WebInvoke(Method = "POST", BodyStyle = WebMessageBodyStyle.Bare,
UriTemplate="Method1?email={email}&apikey={apikey}"+
"&text={text}&quality={qual}", BodyStyle = WebMessageBodyStyle.Bare)]
Stream Method1(string email, string apikey, string text, string qual);
そして、これは機能します。しかし、それは私が引き出して投稿本文に入れたい「テキスト」パラメーターです。私が読んだことの1つは、次のように、別のパラメーターとしてストリームを持つと言っていました:
Stream Method1(string email, string apikey, string qual, Stream text);
その後、読み込むことができました。しかし、ストリーム パラメーターが必要な場合は、それが唯一のパラメーターでなければならないというエラーがスローされます。
では、ここでやろうとしていることをどのように達成できますか、またはクエリ文字列で数千の単語を送信することは大したことではありませんか?