問題タブ [asp.net-apicontroller]
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-mvc - 現在のセッションを MVC コントローラから APIController に送信するには?
MVC コントローラーでセッションを作成しましたが、そのセッションを他の ApiController で使用する必要があります。問題は、MVC コントローラーのコンテキストが ApiController とは異なるため、現在のセッション情報を MVC コントローラーから ApiController に送信する方法はありますか?
現在のセッションには UserID と Username が含まれています
c# - IdentityServer3 - CORS パスが無効なため拒否されました
IdentityServer3 に対して問題なく認証している ASP.NET MVC アプリケーションがありますが、ユーザーが約 3 分後に AJAX 機能を続行する前に待機すると、ApiController の開始を使用するアプリケーションの Web API 部分が失敗します (3 分前はすべて正常に見えます)。 .
Chrome で表示されるエラーは次のとおりです。
XMLHttpRequest は https://test-auth.myauthapp.com/auth/connect/authorize?client_id=ecan-farmda …gwLTk5ZjMtN2QxZjUyMjgxNGE4MDg2NjFhZTAtOTEzNi00MDE3LTkzNGQtNTc5ODAzZTE1Mzgw を読み込めません。要求されたリソースに「Access-Control-Allow-Origin」ヘッダーがありません。したがって、オリジン ' http://test.myapp.com ' へのアクセスは許可されていません。
IE では、次のエラーが発生します。
SCRIPT7002: XMLHttpRequest: ネットワーク エラー 0x4c7、操作はユーザーによってキャンセルされました。
IdentityServer3 のログを見ると、次のようなエントリが表示されます。
2015-08-10 16:42 [警告] (Thinktecture.IdentityServer.Core.Configuration.Hosting.CorsPolicyProvider) CORS リクエストがパス: /connect/authorize from origin: http://test.myapp.comに対して作成されましたが、無効なため拒否されましたCORS パス
IdentityServer3 Web アプリケーションでは、クライアントに AllowedCorsOrigins を与えています。
サービスを登録するときに、InMemoryCorsPolicyService を追加します。
IdentityServer3 のログ エントリには、「パスに対して行われた CORS リクエスト: / auth /connect/authorize」ではなく、「パスに対して行われた CORS リクエスト: /connect/authorize」と表示されていることに注意してください。しかし、IdentityServer3 のソース コードを調べると、これはおそらく問題ではないことがわかります。
おそらく、InMemoryCorsPolicyService が取得されていないのでしょうか?
ApiController と呼ばれる AJAX で機能しない理由について何か考えはありますか?
Thinktecture.IdevtityServer3 v1.6.2 は NuGet を使用してインストールされています。
アップデート
IdentityServer3 の開発者と話し合っていますが、まだ問題が解決されていません。それが役立つ場合:
https://github.com/IdentityServer/IdentityServer3/issues/1697
asp.net-mvc - ASP NET 属性ルーティング配列
したがって、コントローラーに属性ルーティングを次のように使用しています。
ここで、整数の配列を受け入れるように変換したいのですが、コントローラーのパラメーターで[FromUri] int id[]
問題なく切り替えるだけですが、整数の配列を受け入れるようにルート属性を切り替えるにはどうすればよい[Route("last/{id:int}")]
ですか?
c# - HashSet を C# ApiController に送信する
プロパティを持つ C# オブジェクトMyObject
がありHashSet
ます。クライアント側でシリアライズGET
し、URI のパラメーターを使用して C# に送信します。C#ApiController
は、オブジェクトを引数として受け入れます。
これはすべて a を使用して完全に正常に機能しましたList
が、 を使用しているHashSet
ため、クライアントはオブジェクトをシリアル化して送信しますが、サーバーは空の を受け取りますHashSet
。
C# がURIを介してApiController
受信する方法に重要な違いはありますか?HashSets
Lists
azure - Azure Mobile Apps での TableController と ApiController の比較
モバイルアプリを始めたばかりです。私はApiController
Web API で API を作成することに慣れています。
VS2015 の Mobile Apps の既定のプロジェクト テンプレートには、TodoItemController
から継承したサンプルが付属していますTableController
。すぐに使用できるいくつかの CRUD 操作がインストールされているようでTableController
、各データ オブジェクトのタイプは である必要がありますITableData
。
TableController
理想的には、スキップして自分のやり方で実装したいと思いApiController
ます。
私の質問は、TableController
もしあれば、捨てることの影響は何ですか? App Service と の使用の間に密結合はありTableController
ますか?
c# - ApiController と Owin ベアラー トークンを使用してベアラー トークンを更新する最適な方法
C# WebApp を介してデータにアクセスする AJ Web サイトがあり
ます。これは、ApiController を使用するだけであり、Owin
ベアラー トークンを使用して、AJ クライアント コードが API にアクセスできるようにします。
API は AJ Web サイトへのアクセスのみであり
、ログインと使用するトークンの返却を処理します。
トークンとクレームが生成されますが、メインの Web API によって内部的に呼び出される 2 番目の Web アプリケーションです。
これらのサイトはうまく機能しており、要求を識別するためにクレームを使用してデータが流れています。
私たちがやりたいことは
、認証されたトークンを渡すことができるメイン Api でリクエストを作成することです
クレームを使用して ID を認識し
、更新されたベアラー トークンを返します
。これにより、すべてのロールまたは有効期限が更新されます
ベアラー トークンの提供をメインの Web API に再度渡し、
トークン サービスに渡し、新しいベアラー トークンを作成する最善の方法は何でしょうか?
簡易認証サービス プロバイダーを更新しますか? それとも、私たちがリコールし、新しいベアラー トークンを生成するトークン サービスに対する新しい API 呼び出しを行いますか?
最適なオプションは何ですか? また、それをどのように実装しますか?
トピックに関するご意見やご協力に感謝します。私が見ることができるのは、この使用法の多くの例ですが、実際の使用法で完全なものはないようです。
さらに、AJ サイトが保存するか、Cookie 内にあるリフレッシュ トークンの使用を許可しているようです。
いくつかの例は、有効期限が切れた後にリフレッシュできることを示しています。
有効期限が切れる前に、ベアラー トークンの更新を確認したいと考えています。
有効期限が切れている場合は、再度ログインする必要があります。
asp.net-web-api - HttpRequestBase をパラメーターとして渡すには
System.Web.HttpRequestBase をパラメーターとして受け取るメソッド GetIP() があります。HttpRequestBase オブジェクトを取得する方法を教えてください。
本当に基本的なことだと思いますが、理解できません。
ありがとうございました。
asp.net-mvc - ASP.NET Web API 日時バインディング
日付の値が「2015 年 2 月 11 日」(DD/MM/YYYY) の JSON オブジェクトを API コントローラーに送信します。何らかの理由で、製本中に米国形式に変換されます (2 月 11 日)。同じソリューションに標準の MVC コントローラーがあり、同じ形式で送信された日付値を正しくバインドします (英国)。この違いの原因は次のとおりです。
標準の MVC サブミッション ヘッダーは次のとおりです。
そしてフォームデータ
ここに API 呼び出しヘッダーがあります
そして、私が渡すJSONオブジェクト