問題タブ [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.
asp.net-core - リクエストボディを2回読む
認証のためにミドルウェアで本文を読み取ろうとしていますが、リクエストが API コントローラーに到達すると、本文は既に読み取られているため、オブジェクトは空です。とにかくこのあたりにあるのだろうか。私はミドルウェアでこのように本文を読んでいます。
c# - ASP.NET Core Web API - クラスのメンバーがインターフェイスの場合、パラメーター バインディングが機能しない
Web API コントローラーにメソッドがあります。
メソッドを呼び出すことはできますが、パラメーターは常に null です。登録クラスは次のように定義されます。
インターフェースである Registration の Student プロパティがこれを引き起こしているようです。これを具体的な型に置き換えようとすると、うまくバインドされるからです。
インターフェイスを使用するときにこのバインドを行うにはどうすればよいですか? また、元の Web API では、Registration 型のパラメーターを受け入れています。これをインターフェイス (IRegistration) として作成し、バインドすることもできますか?
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 要求に便乗しています。これはうまくいくはずだと思いますが、うまくいかない理由や別の方法を知っている人がいれば、それは素晴らしいことです。追加情報を提供する必要がある場合はお知らせください。
c# - Controllerから特定のステータスコードを返し、コンテンツを返さない方法は?
以下のコントローラーの例で、内容のないステータス コード 418 を返すようにします。ステータス コードの設定は簡単ですが、リクエストの終了を知らせるために何かを行う必要があるようです。ASP.NET Core より前の MVC または WebForms では呼び出しになる可能性がありますが、存在しないResponse.End()
ASP.NET Core ではどのように機能しますか?Response.End
asp.net-core - WebApi が ASP.NET Core RC2 プロジェクトに読み込まれない
RC2 に移行した後、WebAPI サービスのロード/ホスティングでいくつかの問題に直面しています。以前の移行では、同じ WebAPI が正常に機能していました。次のURLから移行の手順を実行しました。
デバッグ モードで IISExpress でアプリケーションを起動しようとすると、アプリケーションをデバッグできます。つまり、Program.cs が実行され、制御が startup.cs メソッド/イベントに移動し、最後に戻ってステートメント ホストを実行します。走る(); program.cs ファイル内。しかし、このステートメントを実行した後、バックグラウンドで実行されるステートメントを取得/デバッグすることはできませんが、最終的に内部的に感知できるのは、バックグラウンドで無限ループになり、サービスが起動されないことです。IISExpress 自体で作業する最初のステップは、ここでは機能しません。以下のコードは Program.cs ファイルにあります
ここで何が起こっているのか、どこに問題があるのでしょうか?
注: 移行の同じ手順が他の WebAPI プロジェクトでも機能しましたが、問題はこのアプリケーションのみにあります。
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
ありがとう、デイブ
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 用にヘルプ ファイルを生成する方法はありますか?
c# - WebAPI Core の ResponseCacheAttribute はありますか?
私は現在 WebAPI 2 を使用しており、ASP.Net Core へのアップグレードを検討しています。
トピックにたどり着いたときHttp Caching
、asp.net コアにはResponseCacheAttribute
(MVC 属性である) しかなく、WebApi の並列属性がないことに気付きました。
私の質問は次のとおりです。
を。統合されたApiController
との間の移行により、MVC 属性は WebApi アクションで機能しますか?MvcController
Controller
b. そうでない場合、WebApi の実装された代替手段はありますか?