2012-07-31 11 views
5

私は、.net c#mvc3 WebサービスアプリケーションをwirhビジュアルWeb開発者2010として開発しました。 私はアンドロイドのmovileアプリケーションからWebサービスを呼び出しています。 EclipseエミュレータからWebサービスをテストしたいと思っています。 私はwebserviceアプリケーションをデバッグするときに、Webブラウザからサービスを呼び出すことですべて正常に動作しますが、エミュレータを使用してアンドロイドアプリケーションから呼び出したときには、 "HTTP/1.1 400 Bad Request"を取得します。ビジュアルWebデベロッパーWebサービスのデバッグHTTP/1.1 400 Bad Request

不思議なことは、私がローカルのIIS 7上でWebサービスアプリケーションを公開すると、サービスをデバッグできないものの、すべてがうまく動作することです。

"します。http:// localhost:1627/myservice.asmx/MyMethodは"

私のAndroid上で私は、Webページはそのようなアドレスが表示され、視覚的Web開発者を使用してサービスをdebig

アプリケーション私はそのようなURLでサービスを呼び出す:

「http://10.0.2.2:1627/myservice.asmx/myMethod」が、その後、私は、「HTTP/1.1 400不正な要求」を取得

私は本当に助けに感謝します。

ありがとうございました。

答えて

3

Cannot connect ASP.NET development server (VS2010) via IP address

によるASP.NET開発サーバーは、ローカルコンピュータ上のブラウザの要求にページを提供します。ページを別のコンピュータに配信することはありません。さらに、アプリケーションスコープ外のファイルは処理されません。 ASP.NET開発サーバーは、IISを実行する運用サーバーにページを公開する前に、ページをローカルでテストする効率的な方法を提供します。

3

私はいつもポート転送ツールであるinetdを使用しました。 Visual Studio 2012以降、私もこの問題を抱えています。問題は、開発サーバーでlocalhost呼び出しのみが許可されていることです。要求ヘッダーを変更しない限り、プロキシ呼び出しは機能しません。 GitHubで見つかった既存のシンプルなプロキシサーバーをいくつか変更しました。リクエストURLのIPアドレスを `localhost 'に変更します。コードhereをダウンロードしてください。


私はより良い解決策を見つけました。あなたのコンピュータにIIS Expressがインストールされている場合は、プロジェクト内のディレクトリのIISに新しいアプリケーションを作成し、エイリアスを付けます。適切なアプリケーションプールが設定されており、http://localhost/YourProject/経由でサイトをブラウズできることに注意してください。他のコンピュータから接続できない場合は、おそらくファイアウォールの問題です。

関連する問題