2016-07-06 11 views
0

現在、ASP.NET Web APIアプリケーションを開発中です。route parametersを使用してサーバーにデータを送信しています。また、bodyのようなデータを送信することもできます。をJSON形式で入力し、サーバーに送信します。サーバーにデータを送信するためのASP.NET Web APIのベストプラクティス

例:

http://localhost:59035/api/Authors/AddAuthors/MyTokenKey/AuthorName 

そして、私はこのようなボディにデータを送信する場合:

TokenKey=MyTokenKey&AuthorName=AuthorName 

私のサーバーの方法に比べても呼ばれています。どちらの方法でもデータを送信できます。

混乱は、サーバーにデータを送信する最も良い方法ですか?本体内のルーティングパラメータ

    1. 。コールする

    我々はそれが他の人に表示されているよりも、route parametersにデータを渡すと、私たちの要求はPOSTGETまたは何か他のもののように、その方法ではある問題ではありません。..

    グッドプラクティスWeb API

    また、Web APIを呼び出すには、どちらが良い方法であるかを、server sideまたはclient sideから知りたいと思います。

    たとえば、Web APIを作成してone domainにホストして、Web APIanother domainから呼び出したいとします。だからclient browser using AJAXからAPIを呼び出すか、サーバからWeb APIに電話する必要があります。

    1. ウェブAPIは、Serverから電話する必要がありますか?

    ありがとうございます。

  • 答えて

    1

    GETまたはPOSTリクエストにパラメータを渡すの唯一の違いは、GETは、パラメータの長さを制限している、と私たちは無制限であることをPOSTパラメータを考慮することができるということです。どのような方法を選択するかは、あなたに依存します。

    AJAXを使用してAPIを呼び出したり、別のWebAPIを使用してAPIを呼び出すのはどうですか? AJAXは、追加操作なしでクロスドメインリクエストをサポートしていません。 APIをdomain1にデプロイしていて、domain2からAJAXリクエストを使用して呼び出す場合は、domain2からの要求を許可するクロスオリジンヘッダーを定義する必要があります。domain1

    APIの場合は、このようなヘッダーを定義できます。クロス・ソース要求を許可しない第三者APIの場合は、独自のWebAPIから呼び出す必要があります。

    +0

    ありがとうございます。しかし、どのメソッドでAPIを呼び出す必要がありますか? 'AJAXを使うクライアントブラウザ'や 'サーバ'のように? –

    +0

    私の答えを – Waldemar

    +0

    に更新しました。これは私の「独自のAPI」ですが、私はすべての「ドメイン」と「アンドロイド」と「IO」に利用できるようにしたいと考えています。「原点通過要求」を許可するのは安全ですか? –

    関連する問題