wcfサービスをセットアップしました。残念ながら、私がフィドラー、ウェブ、またはいつものサービスを呼び出すと、http 400のエラーが発生します。私はこの問題をどこから解決するのか、本当に困惑しています。どんな提案も感謝しています。この時点でWSDLはオプションではありません。 RESTが必要です。以前はGETを使用して電話をかけることができましたが、確認するためにユーザーIDとパスワードを渡す必要があり、簡単に見ることができるため、getは安全ではありません。http投稿を使用して安心なwcfサービスを呼び出す際にhttp 400エラーが発生する
WCFサービスは、以下のインターフェースを有する。
[WebInvoke(UriTemplate = "/Login", Method="POST",
ResponseFormat = WebMessageFormat.Xml,
BodyStyle = WebMessageBodyStyle.Wrapped)]
[OperationContract]
bool Login(string UserName, string PassWord, string AppKey);
サービスは、次のコードを有しています。はい、このコードは不完全で、私はAppKeyが本当に何もしないことを知っています。その時点でプレースホルダとして存在しています。
public bool Login(string UserName, string PassWord, string AppKey)
{
bool bl = false;
if (String.IsNullOrEmpty(AppKey))
{
throw (new ApplicationException(AppKeyNull));
}
if (Membership.ValidateUser(UserName, PassWord))
{
bl = true;
}
return (bl);
}
私はフィドラーを超えてサービスを呼び出そうとしています。私は、次のURLを持っている:
http://127.0.0.1:82/WebServices/RemoteAPI.svc/Login
私は次のヘッダーの設定があります。
User-Agent: Fiddler
Host: 127.0.0.1:82
Content-Length: 46
Content-Type: application/x-www-form-urlencoded
を、私は、次のボディを設定している:
UserName=xxxxxx&PassWord=yyyyyy&AppKey=blah
ありがとうございます。私はコンテンツの長さを手で計算し、46も出てきました。私はそれを自分自身で計算させるようにしました。残念ながら、これは問題を解決しませんでした。 –
Davidに感謝します。私はこれを働かせた。 –