タグ付けされた質問 「asp.net-core-webapi」

4
RS256とHS256:違いは何ですか?
Webアプリで認証を処理するためにAuth0を使用しています。ASP.NET Core v1.0.0とAngular 2 rc5を使用していますが、認証/セキュリティ一般についてはあまり知りません。 ASP.NET Core Web ApiのAuth0ドキュメントでは、JWTアルゴリズムにRS256とHS256の2つの選択肢があります。これは馬鹿げた質問かもしれませんが: RS256とHS256の違いは何ですか?いくつかのユースケース(該当する場合)は何ですか?

10
ASP.NET Coreがステータスコードを含むJSONを返す
.NET Core Web APIコントローラーでHTTPステータスコードを使用してJSONを返す正しい方法を探しています。私はこれを次のように使用しています: public IHttpActionResult GetResourceData() { return this.Content(HttpStatusCode.OK, new { response = "Hello"}); } これは4.6 MVCアプリケーションにありましたが、現在.NET Coreを使用しているので、これIHttpActionResultをActionResult使用していないようで、次のように使用します。 public ActionResult IsAuthenticated() { return Ok(Json("123")); } しかし、以下の画像のように、サーバーからの応答は奇妙です。 Web APIコントローラで、Web API 2で行ったように、HTTPステータスコードを含むJSONを返すだけです。

3
ASP.Net Core Web APIのファイルを返す
問題 ASP.Net Web APIコントローラーでファイルを返したいのですが、すべてのアプローチでHttpResponseMessageJSONとして返します。 これまでのコード public async Task<HttpResponseMessage> DownloadAsync(string id) { var response = new HttpResponseMessage(HttpStatusCode.OK); response.Content = new StreamContent({{__insert_stream_here__}}); response.Content.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream"); return response; } ブラウザでこのエンドポイントを呼び出すと、Web APIはHttpResponseMessageHTTPコンテンツヘッダーがに設定されたJSONを返しますapplication/json。

5
コントローラから特定のステータスコードを返し、コンテンツを返さない方法は?
以下の例のコントローラーで、コンテンツのないステータスコード418を返します。ステータスコードの設定は簡単ですが、リクエストの終了を知らせるために実行する必要があることがあるようです。ASP.NET Coreより前のMVCまたはWebFormsで呼び出される可能性がありますがResponse.End()、Response.End存在しないASP.NET Coreではどのように機能しますか? public class ExampleController : Controller { [HttpGet][Route("/example/main")] public IActionResult Main() { this.HttpContext.Response.StatusCode = 418; // I'm a teapot // How to end the request? // I don't actually want to return a view but perhaps the next // line is required anyway? return View(); } }

3
列挙型は.Net core 3.0 FromBodyリクエストオブジェクトで機能しなくなりました
最近、web apiを.Net core 2.2から.Net core 3.0にアップグレードしましたが、ポストの列挙型をエンドポイントに渡すと、リクエストでエラーが発生することに気付きました。例えば: 私のAPIエンドポイントには次のモデルがあります。 public class SendFeedbackRequest { public FeedbackType Type { get; set; } public string Message { get; set; } } FeedbackTypeは次のようになります。 public enum FeedbackType { Comment, Question } そしてこれはコントローラメソッドです: [HttpPost] public async Task<IActionResult> SendFeedbackAsync([FromBody]SendFeedbackRequest request) { var response = await _feedbackService.SendFeedbackAsync(request); return Ok(response); } …

3
.NET Core 3シングルファイルアプリを取得してappsettings.jsonファイルを見つけるにはどうすればよいですか?
単一ファイルの.Net Core 3.0 Web APIアプリケーションappsettings.jsonは、単一ファイルアプリケーションのビルド先と同じディレクトリにあるファイルを検索するようにどのように構成する必要がありますか? 実行した後 dotnet publish -r win-x64 -c Release /p:PublishSingleFile=true ディレクトリは次のようになります。 XX/XX/XXXX XX:XX PM <DIR> . XX/XX/XXXX XX:XX PM <DIR> .. XX/XX/XXXX XX:XX PM 134 appsettings.json XX/XX/XXXX XX:XX PM 92,899,983 APPNAME.exe XX/XX/XXXX XX:XX PM 541 web.config 3 File(s) 92,900,658 bytes ただし、実行しようとするAPPNAME.exeと、次のエラーが発生します。 An exception occurred, System.IO.FileNotFoundException: The configuration …

5
.Netコア3.0でのJWT認証とSwagger
.Net core 3.0でWeb APIをいくつか開発していて、それをSwashBuckle.Swaggerと統合したいと考えています。正常に機能していますが、JWT認証を追加すると、期待どおりに機能しません。そのために、以下のコードを追加しました。 services.AddSwaggerGen(c => { c.SwaggerDoc("v1", new Microsoft.OpenApi.Models.OpenApiInfo { Title = "My Web API", Version = "v1" }); c.AddSecurityDefinition("Bearer", new OpenApiSecurityScheme { Description = "JWT Authorization header using the Bearer scheme. Example: \"Authorization: Bearer {token}\"", Name = "Authorization", In = ParameterLocation.Header, Type = SecuritySchemeType.ApiKey }); }); AddSecurityDefinition関数を追加すると、[承認]ボタンが表示され、クリックすると、次のフォームが表示されます。 次に、と入力しますBearer …

1
IAsyncEnumerableがASP.NET Web APIでどのように機能するかについての説明
ASP.NET Web APIプロジェクトでIAsyncEnumerableを探索しているときに、興味深い動作が発生しました。次のコードサンプルを検討してください。 // Code Sample 1 [HttpGet] public async IAsyncEnumerable<int> GetAsync() { for (int i = 0; i < 10; i++) { await Task.Delay(1000); yield return i; } } // Code Sample 2 [HttpGet] public async IAsyncEnumerable<string> GetAsync() { for (int i = 0; i < 10; i++) { …
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.