問題タブ [cassini-dev]

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 投票する
2 に答える
667 参照

c# - テストを停止した後、cassiniDev を停止します

cmd から cassiniDev を実行します

C:\CruiseControl.NET-1.5.0.6237\cassinidev.3.5.0.5.src-repack\CassiniDev\bin\Debug\CassiniDev.exe /a:D:_CCNET\proj /pm:特定 /p:3811

そして、デバッグとテストを開始します。テストが終了した後、CMD から cassiniDev を停止するにはどうすればよいですか。cassiniDev_console を試してみましたが、コンソールが機能しないため、コンソールから cassiniDev を使用しています。

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

asp.net - Web テストのモックを作成するには?

asp.net Web アプリケーション用に (WatiN/Selenium + CassiniDev Web サーバー上で) いくつかの Web テストを作成したいと考えています。

私が遭遇した問題は、そのような状況で何をすべきかわからないということです。ユーザーがボタンをクリックしてサードパーティのサービスを呼び出すことができるページがあります。私の Web テストでは、このサービスのモックを作成したいと考えています。これは常に静的な値を返します (これらのテスト ケースの値と他のテスト ケースの値)。

どうやってやるの?

現在、IoC/DI コンテナーの Microsoft Unity を使用しています。そして、私のページはhttp://msdn.microsoft.com/en-us/library/ff664622%28v=pandp.50%29.aspxで説明されている方法で彼の依存関係を取得します。

私の頭に浮かぶ唯一の解決策は、テストケースごとにすべての依存関係を web.config に配置し、テストのセットアップで必要な web.config をコピーすることです。この解決策は完全に痛いです!

何か案は?

0 投票する
0 に答える
288 参照

httpsession - CassiniDev を使用した HttpSessionState null

CassiniDev を使用して単体テストを構築しようとしています。まず、サーバーとページを作成し、リクエストを生成します。

すべて問題ありませんが、HttpSessionState オブジェクトを使用しようとすると、null になります。

他のことや追加の手順を実行する必要がありますか?

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

visual-studio-2010 - Visual Studio のこの 'localhost' プロジェクトで何が起こっているのでしょうか?

Visual Studio ソリューションがあり、それを開いたときに次のエラーが表示されました。

" http://localhost:55365 : エラー : Web サイト ' http://localhost/_1 ' を開けません。ローカルの IIS Web サイトにアクセスするには、次の IIS コンポーネントをインストールする必要があります:

さらに、管理者アカウントのコンテキストで Visual Studio を実行する必要があります。

詳細については、F1 を押してください。」

奇妙なのは、インストールするものが何もリストされていないことです。注 : Visual Studio を管理者として実行しました。これは、エクスプローラーでのソリューションのスクリーンショットです...

ここに画像の説明を入力

本当に私は2つの質問があります:

1) ソリューション エクスプローラーの 2 番目のプロジェクトのプロジェクト タイプは何ですか?

2) ロードしないのはなぜですか? 私は IIS をインストールしており、Web 開発サーバーの下で他のサイトを実行しています。

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

c# - Cassini-dev の NTLM 認証における SecurityIdentifiers

Cassini-dev の NTLM 認証クラスのこのコード ブロックでは、( Interopを介して) SECUR32.DLL への呼び出しが行われ、HTTP 要求のAuthorizationヘッダー内の base64 でエンコードされたデータが認証されます。AcceptSecurityContext()QuerySecurityContextToken( )の両方が を返す0場合、クライアントは承認されています。最後に、セキュリティ コンテキスト トークンから がSecurityIdentifier抽出されます ( _sid変数)。(一般的なセキュリティ IDについて少し)

NtlmAuth クラスの関連セクションは次のとおりです。

Request Classでは、NtlmAuthTryNtlmAuthenticate()が使用されているメソッドで、NTLM 認証の 3 つのステップを正常に完了した後、最終的な403を返すか要求を満たす前に、1 つの最終チェックが行われています。

ここで、_host.GetProcessSid()SecurityIndentifierCassini プロセスの所有者 (私) のものであり、auth.SIDSecurityIdentifier認証されたユーザーのものです (上記のNtlmAuthクラスの _sid )。これら 2 つの SID が同じでない場合、403 が返されて認証が停止します。それ以外の場合、要求はブラウザーに提供されます。


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

  1. 2 人の異なるユーザーの SecurityIndentifier を比較する必要があるのはなぜですか? Cassini プロセスを所有するユーザーではないユーザー/パスワードで NTLM 認証を試みると、これは失敗します (403 を返します) 。
  2. これが本当に意図された動作である場合、Cassini が Windows サービスとして実行される場合、ホスト SID がS-1-5-18 (または、OS のバージョンによっては同様のもの) になるため、誰もログインできなくなります。誰もオペレーティング システムとしてログインできません。これは Cassini の NTLM 認証実装の一部にすぎませんか? Cassini を正しく使用していませんか?
  3. これが明らかに意図した動作ではない場合、SecurityIndentifiers はこのコンテキストでどのような役割を果たしますか? 特定のクラス/グループのクライアント SID を受け入れるために、ホスト SID が特定のクラスまたはグループである必要があることを確認するために、追加のチェックを行う必要がありますか? ホスト/クライアント SID を処理する場合、OS バージョン (XP/Vista/7) の影響はありますか?
  4. それとも、SecurityIdentifiers は保存も受け渡しもされておらず、ユーザー/クライアントをさらに識別するために使用されていないため、ここでは SecurityIdentifiers の適切な使用法はありませんか?

更新: cassinidev フォーラムの誰かが 2010 年にこの SID チェックを削除するパッチ(パッチ #6604) を提案したようですが、まだ評価中です。

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

asp.net - Windows サービスでホストされている場合、Cassini-Dev の Windows ID が正しくありません

サービスの MVC 3.0 構成サイトを実行している Windows サービスで CassiniDev 4.0 をホストしています。

Windows認証を使用するためのweb.configセットアップがあります。Web サイトで HttpContext.User を見ると、リクエストを行っているユーザーのアイデンティティーではなく、サービスが実行されている ID が示されます。User.AuthenticationType は NTLM ですが、これは正しいです。

これは明らかにバグのようですが、コミュニティで実行して、不足している構成がないかどうかを確認したかったのです。

先週投稿されたこの問題のバリエーションのようです。

Cassini-dev の NTLM 認証における SecurityIdentifiers

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

c# - タイムアウトなしで CassiniDev.Lib を使用するには?

CassiniDev.Lib4 DLL を使用していますが、サーバーが一定時間後に応答を停止することを認識しました。

CassiniServer.cs のコードを見ると、60 秒のタイムアウトが設定されていることがわかります。

_server = new Server(port, virtualPath, applicationPath, ipAddress, hostname, 60000);

サーバーのタイムアウトを回避するにはどうすればよいですか? そして、なぜタイムアウトがあるのですか?

編集:フィドラーは私に言います: HTTP/1.1 502 Fiddler - Connection Failed Content-Type: text/html; charset=UTF-8 Connection: close Timestamp: 09:18:38.367 The socket connection to localhost failed. Es konnte keine Verbindung hergestellt werden, da der Zielcomputer die Verbindung verweigerte 127.0.0.1:1278

EDIT 2:私は時間を維持し、60秒の時間枠を認識できないため、実装されたタイムアウトと関係があるかどうかはもうわかりません。最後のクリックから 40 秒後にサーバーが応答しない場合がありました。それとも、キャッシュされた Web サイトが読み込まれ、最後のクリックでリクエストがトリガーされなかった可能性がありますか?

あなたのヒントを本当に楽しみにしています!

よろしくお願いします、

KB

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

c# - サーバーに接続できません

プロジェクトでCassiniDevServerを使用しています。CassiniDevServer クラスのオブジェクトを作成し、適切な引数を渡してその start() メソッドを呼び出しました。

サーバーは Web ページをホストし、ブラウザーで正しくレンダリングします。しかし、しばらくしてから更新すると、ブラウザは

ローカルホストに接続できません:ポート番号

しばらくするとサーバーが停止するようです。なぜそうなのですか?どうすればこれを回避できますか? ガベージコレクションされていますか?

次のメソッドを持つクラス MyCassiniDevUtil があります。

呼び出しコードでオブジェクトを作成し、MycassiniDevUtilこのメソッドを呼び出します。このメソッドは、現在作成されているサーバー インスタンスへの参照を返します。この参照を呼び出し元のコード クラスに割り当てます。

したがって、実際には両方のクラスへの参照がありますが、それでもガベージコレクションが行われていると感じています。または、そうでない場合は、ブラウザを更新して数分後に接続できないと表示される理由がわかりません...

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

asp.net - WinFormアプリに埋め込まれたCassiniDev?

アプリのwinform部分内から生成されたイベントと対話できるWebインターフェースも備えたwinformアプリをまとめようとしています。アプリ内からcassinidevサーバーを正常に実行しており、asp.netページが処理されていますが、まだいくつかの障害に遭遇しており、それらが可能かどうかさえわかりません???

  1. コード ビハインド ページを使用できません。ページ ディレクティブに適切な属性を追加しましたが、aspx ページからコントロールにアクセスできません。

  2. アプリの Web 部分からクラスにアクセスできません。スクリーンショットを見る...

たぶん私が達成しようとしていることは不可能かもしれませんが、誰かが私を正しい方向に向けるのを助けることができれば、私は最も感謝しています!

ここに画像の説明を入力

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

continuous-integration - CassiniDev 64bit 継続的インテグレーション

最近、CassiniDev を使用して CI サーバーで WatiN テストを実行し始めました。2 台の 32 ビット マシンをビルドしてテストすると、テストの実行に問題はありません。ただし、64 ビット マシンでビルドしてテストすると、次のエラーが発生します。

私が見つけたのは、64ビット環境との競合によるものです。64 ビットのローカル マシンでは、プラットフォーム ターゲットを x86 に設定しても問題なく、テストは夢のように実行されます。ただし、リリース構成を x86 をターゲットにして 64 ビット マシンにデプロイするように変更しても、同じエラーが発生します。これに対する回避策を知っている人はいますか?32 ビット マシンと 64 ビット マシンの両方でビルドしてテストできる方法はありますか?