2017-06-22 6 views
0

- 私を処理する:設定ASP.NET MVCは、次の処理を行いASP.NET MVCプロジェクトに取り組んでJSON

ユーザーのAndroidアプリを使用してデータを収集し、このデータはJSONとして送信されています。このアプリは私のものではなく他の誰かによって開発中ですが、私たちは連絡しています。

私は、次のアクションでJSONControllerを作成しました:

[HttpPost] 
    public JsonResult PutJSON(JSONModel json){ 
     // do something 
    } 

マイJSONModelはテスト目的のみのためにpublic string LastNameが含まれています。

今のところ私のホームネットワーク内の他のデバイスからアクセスできるlocalhost上のIISにのみプロジェクトを公開できます。私が知る限り、それはテストのために大丈夫でしょうか?プロジェクトはアクセス可能で、そのマシンのIPをネットワーク上の別のデバイスのブラウザに入力すると機能します。

ASP.NET MVCプロジェクトで「外部」からのAJAX呼び出しを受け入れるために必要なことはありますか?何か不足していますか?

他のデバイスからの簡単なAJAX呼び出しでテストしようとしましたが、クロスドメインコールのために内部サーバーエラーが発生しています。これらのクロスドメインコールを受け入れることはできませんでした(プロジェクトが最終的に公開されたときに必要なのですか?)

誰かが助けてくれたら大変感謝しています。インターネットからのAJAX呼び出しを受け入れるようにASP.NETプロジェクトを構成します。

+0

こんにちは、私は最初にクロスオリジンの要求の概念を読むことをお勧めします:https://en.wikipedia.org/wiki/Cross-origin_resource_sharingそして、このトピックを参照して、asp.netを適切に受け入れるように構成することができます必要なリクエスト:https://stackoverflow.com/questions/6290053/setting-access-control-allow-origin-in-asp-net-mvc-simplest-possible-method。すべてのソースを有効にすると、ページが危険なスクリプトに対して脆弱になる可能性があることに注意してください。 –

+0

私はすでに前に指示に従ったが、それは私の問題を解決しませんでした。 特定の起源についてCORSを有効にすることは、アプリからjsonを送信するときにそのプロジェクトに必要なものではありません。 – MeMySelf

+0

こんにちは@MeMySelf、あなたはWeb APIプロジェクトを作成しましたか?それともMVCプロジェクトだけですか? –

答えて

0
+0

私も前にその記事を読んでいた;) 基本的には、インターネットからのAJAXコールを受け入れるために上記のようなアクションを行うだけで十分かどうかを知る必要があります。 jQueryを使用してViewから呼び出しを送信すると、完全に機能します。 – MeMySelf

+0

アクションにアクセスしようとしているサイトのページにアクセスできるかどうか確認してください。 –

+0

ページ(およびIISなど)はローカルワークステーションで実行されており、ネットワーク上のデバイスからアクセスできます。 私のワークステーション上のビューから、jsonを私の動作に渡すことはできますが、ネットワーク内の他のどのデバイスからでも可能です。 – MeMySelf

関連する問題