問題タブ [asp.net-core-webapi]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
20250 参照

asp.net-core - リクエストボディを2回読む

認証のためにミドルウェアで本文を読み取ろうとしていますが、リクエストが API コントローラーに到達すると、本文は既に読み取られているため、オブジェクトは空です。とにかくこのあたりにあるのだろうか。私はミドルウェアでこのように本文を読んでいます。

0 投票する
1 に答える
2394 参照

c# - ASP.NET Core Web API - クラスのメンバーがインターフェイスの場合、パラメーター バインディングが機能しない

Web API コントローラーにメソッドがあります。

メソッドを呼び出すことはできますが、パラメーターは常に null です。登録クラスは次のように定義されます。

インターフェースである Registration の Student プロパティがこれを引き起こしているようです。これを具体的な型に置き換えようとすると、うまくバインドされるからです。

インターフェイスを使用するときにこのバインドを行うにはどうすればよいですか? また、元の Web API では、Registration 型のパラメーターを受け入れています。これをインターフェイス (IRegistration) として作成し、バインドすることもできますか?

0 投票する
2 に答える
7232 参照

c# - ASP.Net Core Web API ロギング用の HTTP 要求をキャプチャする

ASP.NET Core Web API でログ記録のために HTTP 要求をキャプチャするのが困難です。ここで例を見つけることができました

http://dotnetliberty.com/index.php/2016/01/07/logging-asp-net-5-requests-using-middleware/

これは役に立ちました。これは基本的に、ミドルウェア機能を使用して HTTP 要求パイプラインに追加されるログ クラスです。問題は、クラス メソッドがアプリケーションの起動時にのみ呼び出されることです。get または post http リクエストで呼び出すことができません。コンソール アプリケーション内で Fiddler と http クライアントを使用してみましたが、デバッグが可能で、応答が正常であるため、get または post http 要求が機能しています。

これが私のロギングクラスです

そして、これが Startup.cs クラスの Startup.Configure メソッドです。

最後の行では、app.UseMiddleware を使用して HTTP 要求に便乗しています。これはうまくいくはずだと思いますが、うまくいかない理由や別の方法を知っている人がいれば、それは素晴らしいことです。追加情報を提供する必要がある場合はお知らせください。

0 投票する
5 に答える
220149 参照

c# - Controllerから特定のステータスコードを返し、コンテンツを返さない方法は?

以下のコントローラーの例で、内容のないステータス コード 418 を返すようにします。ステータス コードの設定は簡単ですが、リクエストの終了を知らせるために何かを行う必要があるようです。ASP.NET Core より前の MVC または WebForms では呼び出しになる可能性がありますが、存在しないResponse.End()ASP.NET Core ではどのように機能しますか?Response.End

0 投票する
1 に答える
193 参照

asp.net-core - WebApi が ASP.NET Core RC2 プロジェクトに読み込まれない

RC2 に移行した後、WebAPI サービスのロード/ホスティングでいくつかの問題に直面しています。以前の移行では、同じ WebAPI が正常に機能していました。次のURLから移行の手順を実行しました。

デバッグ モードで IISExpress でアプリケーションを起動しようとすると、アプリケーションをデバッグできます。つまり、Program.cs が実行され、制御が startup.cs メソッド/イベントに移動し、最後に戻ってステートメント ホストを実行します。走る(); program.cs ファイル内。しかし、このステートメントを実行した後、バックグラウンドで実行されるステートメントを取得/デバッグすることはできませんが、最終的に内部的に感知できるのは、バックグラウンドで無限ループになり、サービスが起動されないことです。IISExpress 自体で作業する最初のステップは、ここでは機能しません。以下のコードは Program.cs ファイルにあります

ここで何が起こっているのか、どこに問題があるのでしょうか?

注: 移行の同じ手順が他の WebAPI プロジェクトでも機能しましたが、問題はこのアプリケーションのみにあります。

0 投票する
1 に答える
4562 参照

asp.net-core-mvc - IdentityServer4 のクレーム プリンシパルでアクセス トークン クレームを取得する

oAuth2/IdentityServer4について頭を悩ませようとしています。

https://github.com/IdentityServer/IdentityServer4.Samples/tree/dev/Quickstarts/3_ImplicitFlowAuthenticationでサンプル アプリケーションを使用する

MVC アプリケーションの次のコード:

ID トークン クレームのように見えるものを返します

nbf
1467173142
exp
1467173442
iss
http://localhost:5000
aud
mvc
nonce
636027699106782287.MDI0YzI5MTQtYmQxNy00MDllLWJmYzQtZjBhYzI2MGNjYmE3MDFmNzg1YmUtM2Y5ZC00YjBiLWEzOGItN2Q3ODRiODJlYjFl
iat
1467173142
c_hash
H2i5QeJKlHM5-s8vUTYlOw
sid
42b58d38e2b7c6cc653492742a08840b
sub
818727
auth_time
1467170555
idp
idsvr
name
Alice Smith
given_name
Alice
family_name
Smith
website
http://alice.com
amr
pwd

API プロジェクトの次のコード

アクセス トークン クレームのように見えるものを返します

コードは基本的に同じ (ユーザー ID 原則でクレームを返す) であり、名前/電子メールが欠落していますが、API の例にスコープ クレームが含まれていることに注意してください。

トークン フローは基本的に IdentityServer4 => MVC プロジェクト => API プロジェクトです。明らかに、MVC プロジェクトには identityToken とアクセス トークンの両方がありますが、アクセス トークン int User.Claims はロードされません。

私の目標は、MVC プロジェクトの User でスコープ クレームを使用できるようにして、MVC メソッドの Authorize 属性セクションを動作させるポリシーを設定できるようにすることです。

API プロジェクトのスタートアップはこちら: https://github.com/IdentityServer/IdentityServer4.Samples/blob/dev/Quickstarts/3_ImplicitFlowAuthentication/src/Api/Startup.cs

MVC プロジェクトのスタートアップはこちら: https://github.com/IdentityServer/IdentityServer4.Samples/blob/dev/Quickstarts/3_ImplicitFlowAuthentication/src/Api/Startup.cs

ありがとう、デイブ

0 投票する
3 に答える
4892 参照

asp.net-core - 認証タイプ - 新しい Web API サービスを作成するときに、.NET Core の Web API の個々のユーザー アカウントを使用できない理由

個々のユーザー アカウントの承認タイプで Web API プロジェクトを作成できないのはなぜですか?

スクリーンショット: 認証ダイアログの変更

0 投票する
2 に答える
7866 参照

asp.net - ASP.NET Core Web API 自動ヘルプ ページ

以前のバージョンの ASP.NET では、私が Web Api 2 を作成したときに、Visual Studio が API のドキュメントの自動生成を自動的に接続していました。

ここでも説明されています: http://www.asp.net/web-api/overview/getting-started-with-aspnet-web-api/creating-api-help-pages

私は新しいプロジェクトを書いており、ASP.NET Core でそれを行うことにしましたが、API からドキュメントを生成する以前のバージョンに存在していたものと同様のものは見当たりません (それはすべてのコントローラーが同じControllerクラスから継承されるようになったため、少し異なります)。

しかし、ASP.NET Core API 用にヘルプ ファイルを生成する方法はありますか?

0 投票する
1 に答える
536 参照

c# - WebAPI Core の ResponseCacheAttribute はありますか?

私は現在 WebAPI 2 を使用しており、ASP.Net Core へのアップグレードを検討しています。

トピックにたどり着いたときHttp Caching、asp.net コアにはResponseCacheAttribute(MVC 属性である) しかなく、WebApi の並列属性がないことに気付きました。

私の質問は次のとおりです。

を。統合されたApiControllerとの間の移行により、MVC 属性は WebApi アクションで機能しますか?MvcControllerController

b. そうでない場合、WebApi の実装された代替手段はありますか?