タグ付けされた質問 「asp.net-web-api」

ASP.NET Web APIは、ブラウザーやモバイルデバイスなどのクライアント用のHTTPサービスを構築するためのフレームワークです。これは、Microsoft .NET Frameworkに基づいており、RESTfulサービスを構築するための理想的な選択肢です。

5
リモートホストのIPアドレスを取得する
ASP.NETには、プロパティ値からIPアドレスを提供できるプロパティをSystem.Web.HttpRequest含むクラスがあります。ServerVariablesREMOTE_ADDR ただし、ASP.NET Web APIからリモートホストのIPアドレスを取得する同様の方法が見つかりませんでした。 リクエストを行っているリモートホストのIPアドレスを取得するにはどうすればよいですか?

15
ASP.NET Web APIを使用したJSONP
ASP.MVC MVC 4でWeb APIを使用して新しいサービスのセットを作成しています。これまでのところ、素晴らしいです。サービスを作成して動作させましたが、現在はJQueryを使用してサービスを利用しようとしています。Fiddlerを使用してJSON文字列を取得できますが、問題はないようですが、サービスが別のサイトに存在するため、「許可されていません」というJQueryエラーで呼び出しを試みます。したがって、これは明らかにJSONPを使用する必要がある場合です。 私はWeb APIが新しいことを知っていますが、誰かが私を助けてくれることを願っています。 JSONPを使用してWeb APIメソッドを呼び出すにはどうすればよいですか?

11
ASP.Net Web API GETに複数のパラメーターを渡すにはどうすればよいですか?
.Net MVC4 Web APIを使用して(うまくいけば)RESTful APIを実装しています。システムにいくつかのパラメーターを渡し、システムに何らかのアクションを実行させてから、オブジェクトのリストを結果として返す必要があります。具体的には、2つの日付を渡し、その間にあるレコードを返しています。また、後続の呼び出しがシステムで再処理されないように、返されたレコードを追跡しています。 私はいくつかのアプローチを検討しました: paramsを1つのJSON文字列にシリアル化し、APIで分離します。 http://forums.asp.net/t/1807316.aspx/1 クエリ文字列でパラメータを渡します。 複数のクエリパラメータをRESTful APIに渡す最良の方法は何ですか? ルートのパラメータの定義:api / controller / date1 / date2 本質的にparamsでオブジェクトを渡すことができるPOSTを使用します。 Web APIが(現在)サポートしているため、ODATAを調査しています。私はまだこれで多くのことをしていないので、私はそれにあまり詳しくありません。 適切なRESTプラクティスは、データがプルされるときはGETを使用する必要があることを示しているようです。ただし、GETもnullipotent(副作用を生成しない)である必要があります。APIシステムでレコードをマークしているため、特定の実装がこれに違反しているかどうかを知り、副作用を生成しています。 また、可変パラメーターのサポートについても質問しました。入力パラメーターリストが変更された場合、それが頻繁に発生する場合、選択肢3のルートを再定義するのは面倒です。そして、パラメータが実行時に定義されるとどうなるか... いずれにせよ、私の特定の実装では、どの選択(もしあれば)が最良と思われますか?


3
誰かがCreatedAtRoute()を私に説明できますか?
Web API 2のテンプレートから、postメソッドは常に次のようになります。 [ResponseType(typeof(MyDTO))] public IHttpActionResult PostmyObject(MyDTO myObject) { ... return CreatedAtRoute("DefaultApi", new { id = myObject.Id }, myObject); } 私はこのCreatedAtRoute()方法を理解していません。誰かCreatedAtRoute()が私に方法を説明できますか?

4
MVC 5プロジェクトとWeb APIプロジェクトの違い
私はASP.NET MVCとWeb APIを初めて使用し、基本を習得しようとしています。私の知る限り、我々はという名前のVS 2013でのプロジェクトテンプレートを、持っているMVC、Web APIとBoth of them together。 私はチュートリアルを経験し、MVCだけでなくWeb APIテンプレートを使用してAPIを作成できることを学びました。 では、アーキテクチャと使用法に基づくこれらの違いは何ですか?

23
Javaがゼロ以外の終了値2で終了しました-Android Gradle
Androidアプリの実行中にこのエラーが発生します(それをクリーンアップしてからビルドしましたが、エラーはまだ存在しています) 同期:OK プロジェクトを作成:OK クリーン:OK 実行:エラー エラー:タスク ':app:dexDebug'の実行に失敗しました.com.android.ide.common.process.ProcessException:org.gradle.process.internal.ExecException:Process 'command' C:\ Program Files \ Java \ jdk1.7.0 _25 \ bin \ java.exe ''がゼロ以外の終了値2で終了しました 私のgradleファイル: apply plugin: 'com.android.application' android { compileSdkVersion 21 buildToolsVersion "21.1.2" defaultConfig { applicationId "com.rzr.rzevallosr.miappdepruebas" minSdkVersion 19 targetSdkVersion 21 versionCode 1 versionName "1.0" } buildTypes { release { minifyEnabled false …

6
IHttpActionResultを返すときにWeb APIアクションメソッドを単体テストするにはどうすればよいですか?
これが私のアクションメソッドだとしましょう public IHttpActionResult Get(int id) { var status = GetSomething(id); if (status) { return Ok(); } else { return NotFound(); } } テストは var httpActionResult = controller.Get(1); この後、httpステータスコードを確認するにはどうすればよいですか?

9
Web API PutリクエストでHttp 405 Method Not Allowedエラーが生成される
これPUTが私のWeb APIのメソッドの呼び出しです-メソッドの3行目(私はASP.NET MVCフロントエンドからWeb APIを呼び出しています): client.BaseAddressですhttp://localhost/CallCOPAPI/。 ここにありcontactUriます: ここにありcontactUri.PathAndQueryます: そして最後に、これが私の405応答です。 これが私のWeb APIプロジェクトのWebApi.configです。 public static void Register(HttpConfiguration config) { config.Routes.MapHttpRoute( name: "DefaultApi", routeTemplate: "api/{controller}/{id}", defaults: new { id = RouteParameter.Optional } ); config.Routes.MapHttpRoute( name: "DefaultApiGet", routeTemplate: "api/{controller}/{action}/{regionId}", defaults: new { action = "Get" }, constraints: new { httpMethod = new HttpMethodConstraint("GET") }); var …

8
AngularJSを使用してASP.NET Web APIメソッドからファイルをダウンロードする
私のAngular JSプロジェクトには<a>アンカータグがあり、クリックするとGETファイルを返すWebAPIメソッドにHTTP リクエストを送信します。 リクエストが成功したら、ファイルをユーザーにダウンロードしてもらいたい。それ、どうやったら出来るの? アンカータグ: <a href="#" ng-click="getthefile()">Download img</a> AngularJS: $scope.getthefile = function () { $http({ method: 'GET', cache: false, url: $scope.appPath + 'CourseRegConfirm/getfile', headers: { 'Content-Type': 'application/json; charset=utf-8' } }).success(function (data, status) { console.log(data); // Displays text data if the file is a text file, binary if it's an …

2
非同期アクションデリゲートメソッドはどのように実装しますか?
少し背景情報。 私はWeb APIスタックを学び、SuccessやErrorCodesなどのパラメーターを持つ「Result」オブジェクトの形式ですべてのデータをカプセル化しようとしています。 ただし、メソッドが異なれば結果やエラーコードも異なりますが、結果オブジェクトは一般的に同じ方法でインスタンス化されます。 時間を節約し、C#の非同期/待機機能の詳細を学ぶために、Web APIアクションのすべてのメソッド本体を非同期アクションデリゲートでラップしようとしていますが、ちょっとした問題に巻き込まれています... 次のクラスがあるとします。 public class Result { public bool Success { get; set; } public List<int> ErrorCodes{ get; set; } } public async Task<Result> GetResultAsync() { return await DoSomethingAsync<Result>(result => { // Do something here result.Success = true; if (SomethingIsTrue) { result.ErrorCodes.Add(404); result.Success = false; } …

14
MVC Web API:リクエストされたリソースに「Access-Control-Allow-Origin」ヘッダーがありません
私はこの記事に書かれているすべてを試しました:http : //www.asp.net/web-api/overview/security/enabling-cross-origin-requests-in-web-api、しかし何もうまくいきません。angularJSを使用して別のドメインで使用するためにwebAPI2(MVC5)からデータを取得しようとしています。 私のコントローラーは次のようになります: namespace tapuzWebAPI.Controllers { [EnableCors(origins: "http://local.tapuz.co.il", headers: "*", methods: "*", SupportsCredentials = true)] [RoutePrefix("api/homepage")] public class HomePageController : ApiController { [HttpGet] [Route("GetMainItems")] //[ResponseType(typeof(Product))] public List<usp_MobileSelectTopSecondaryItemsByCategoryResult> GetMainItems() { HomePageDALcs dal = new HomePageDALcs(); //Three product added to display the data //HomePagePromotedItems.Value.Add(new HomePagePromotedItem.Value.FirstOrDefault((p) => p.ID == id)); List<usp_MobileSelectTopSecondaryItemsByCategoryResult> items …

11
Web APIコントローラーの複数のHttpPostメソッド
MVC4 Web APIプロジェクトを使い始めましたHttpPost。複数のメソッドを持つコントローラーがあります。コントローラは次のようになります。 コントローラ public class VTRoutingController : ApiController { [HttpPost] public MyResult Route(MyRequestTemplate routingRequestTemplate) { return null; } [HttpPost] public MyResult TSPRoute(MyRequestTemplate routingRequestTemplate) { return null; } } 以下MyRequestTemplateは、リクエストを介して送信されるJsonの処理を担当するテンプレートクラスを表します。 エラー: Fiddler forを使用してリクエストを行うhttp://localhost:52370/api/VTRouting/TSPRouteかhttp://localhost:52370/api/VTRouting/Route 、エラーが発生します。 リクエストに一致する複数のアクションが見つかりました 上記の方法のいずれかを削除すると、正常に動作します。 Global.asax でデフォルトのルーティングテーブルを変更しようとしましたがglobal.asax、それでもエラーが発生します。global.asaxでルートを定義するときに問題があると思います。これが、global.asaxで行っていることです。 public static void RegisterRoutes(RouteCollection routes) { routes.MapHttpRoute( name: "MyTSPRoute", routeTemplate: "api/VTRouting/TSPRoute", defaults: …

6
ASP.NET Web APIにプレーンテキストを強制的に返す方法はありますか?
ASP.NET Web APIコントローラーからプレーンテキストで応答を取得する必要があります。 でリクエストを実行しようとしましたAccept: text/plainが、うまくいっていないようです。また、リクエストは外部からのものであり、私の管理下にありません。私が達成することは、古いASP.NETの方法を模倣することです。 context.Response.ContentType = "text/plain"; context.Response.Write("some text); 何か案は? 編集、解決策:Aliostadの回答に基づいて、WebAPIContribテキストフォーマッターを追加し、Application_Startで初期化しました。 config.Formatters.Add(new PlainTextFormatter()); そして私のコントローラーは次のようなものになりました: [HttpGet, HttpPost] public HttpResponseMessage GetPlainText() { return ControllerContext.Request.CreateResponse(HttpStatusCode.OK, "Test data", "text/plain"); }

6
ApiControllerで生の文字列を返す方法は?
XML / JSONを提供するApiControllerがありますが、私のアクションの1つで純粋なHTMLを返したいのですが。以下を試しましたが、それでもXML / JSONが返されます。 public string Get() { return "<strong>test</strong>"; } これは上記が返すものです: <string xmlns="http://schemas.microsoft.com/2003/10/Serialization/"><strong>test</strong></string> 周囲のXMLタグさえもない、純粋なエスケープされていないテキストだけを返す方法はありますか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.