問題タブ [httphandler]
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.
c# - IIS7 でフォームを 404 + HttpHandler に投稿する: すべての POST データが失われるのはなぜですか?
OK、これは少し混乱して複雑に聞こえるかもしれませんが、ご容赦ください。
わかりやすい URL を定義できるフレームワークを作成しました。任意の URL にアクセスすると、IIS は 404 エラー (場合によっては 403;14 または 405) を表示しようとします。ただし、IIS は、これらの特定のエラーに向けられたものはすべて .aspx ファイルに送信されるように設定されています。これにより、HttpHandler を実装してリクエストを処理し、関連付けられたテンプレートを見つけて、それに関連付けられているものを実行する必要があります。
現在、これはすべて IIS 5 および 6 で機能し、IIS7 でもある程度機能しますが、フォームを投稿するときに発生する問題が 1 つあります。
フォームを存在しない URL に投稿すると、IIS は「ああ、でもその URL は存在しません」と言い、405「メソッドは許可されていません」というエラーをスローします。これらのエラーを .aspx ページにリダイレクトして HttpHandler で処理するように IIS に指示しているため、通常、これは問題になりません。しかし、IIS7 の時点で、405 にリダイレクトされた後、すべての POST 情報が失われました。そのため、フォームに関連する最も些細なことを行うことができなくなりました。
これを解決するために、HttpModule を使用してみました。これは、POST データを保持しますが、適切なタイミングで (必要なときに) 初期化されたセッションを持っていないように見えます。また、404/403;14/405 にヒットする欠落したリクエストだけでなく、すべてのリクエストに対して HttpModule を使用してみましたが、これは画像、css、js などのようなものが .NET コードによって処理されていることを意味し、これは非常に非効率的です。
これは実際の質問につながります.誰かがこれに遭遇したことがありますか?また、何かアドバイスをしたり、物事を再び機能させるために何をすべきかを知っていますか? これまでのところ、誰かが Microsoft 独自のURL Rewriting モジュールの使用を提案しています。これは私たちの問題を解決するのに役立ちますか?
ありがとう。
seo - 動的 URL を使用した SEO とハードリンク
ASP.NET MVC (または HttpHandlers を使用) を使用すると、この質問のようなタイトルを含む URL を動的に生成できます。
タイトルが変更 (たとえば、編集) され、別のサイトからのページへのリンクがあった場合、またはその URL に対して Google のページランクが計算された場合はどうなりますか?
私はそれがすべて失われたと思いますよね?(リンクはどこにもポイントせず、計算されたページランクは失われます)
もしそうなら、それを避ける方法はありますか?
asp.net - 従来の ASP、.NET、および JavaScript の間で変数値を共有するにはどうすればよいですか?
IHttpHandler
HTML の一部を従来の ASP ページに返す .NET C# を作成しました。
従来の ASP ページは、vbscript または JavaScript の Ajax 呼び出しIHttpHandler
を使用して、基本的な http 要求を通じてと通信します。ServerXMLHTTP
ここで、vbscript にはあるが javascript にはない変数を .NET アプリケーションと共有する方法が必要です。
最初のビットは、従来の asp と .net の間で変数を共有することですが、http 要求に変数を追加するだけで問題ありません。変数はjavascriptでは利用できないため、その場合はこれを行うことができません。
.NET アプリケーションで変数をキャッシュし、キャッシュされたバージョンを JavaScript 呼び出しに使用できるのではないかと考えました。しかし、これが機能するには、.NET で「クライアント」を一意に識別する方法が必要です...
HttpHandlerに追加System.Web.SessionState.IRequiresSessionState
して SessionId を使用しようとしましたが、HttpHandler へのすべての呼び出しが新しい ID を取得するように見えるため、これは機能しませんでした。
私は正しい方法を考えていますか?ここでのオプションは何ですか?
performance - XMPP のようなプロトコルを実装しようとする IIS のパフォーマンスの問題
あらゆる種類のポートが閉じられたあらゆる種類のファイアウォールの背後にある世界中に分散されたクライアントから、サーバーから対話型メッセージを取得する必要があるクライアントがいます。信頼できる唯一のものは、HTTP ポート 80 (および HTTPS 443) です。
設計は基本的に XMPP (Jabber プロトコル) をモデルにしており、クライアントと IIS を使用しています。クライアントは .NET ハンドラーに GET 要求を発行します。ハンドラーは、メッセージを探している間、リクエストを開いたままにします。メッセージが到着すると、すぐにクライアントに送信されます。そうでない場合、タイムアウト後、接続は「データなし」応答で閉じられます。クライアントはすぐに通信を再開します。
まあ、理論的には。
実際に何が起こっているかというと、まず、IIS は約 100 を超える同時要求を処理できません。他の要求はすべてキューに入れられており、「接続」とクライアントが呼び出したことを IIS が認識するまでに数分の遅れが生じる可能性があります。次に、約半分の時間です。クライアントはサーバーからの応答なしにタイムアウトします (クライアントのタイムアウトはサーバーのタイムアウトより 5 分長くなります)。
POST は常に機能します。同じ Web サーバーで提供される他のデータは機能します。同じサーバー上の Web サービスが動作します。これは、Windows 2K3 Server ですぐに使用できるインストールです。
不足している構成オプションはありますか、またはこれに対処するために他に確認する必要があるものはありますか?
ありがとう。
asp.net - Web.ConfigのHTTPHandlerタグはasmxファイルを壊します
ASP.Net 1.1アプリケーションで、Web.Configに次のものを追加しました(System.Webタグセクション内)。
これは正常に機能し、HTTPHandlerはタイプ.bcnのファイルを起動し、その処理を実行します。ただし、何らかの理由ですべてのASMXファイルが機能しなくなります。なぜこれが当てはまるのか、何か考えはありますか?
乾杯グレッグ
c# - HttpHandler URI を「スムーズに」フォーマットするにはどうすればよいですか?
私は ASP.Net 2.0 を使用して C# の RESTful Web サービスの方法に干渉しているだけであり、(クラス ライブラリ、前者によって生成された dll への参照、および web.config のいくつかの調整を介して) を管理しました。 URI 形式は次のようになります。
http://localhost/DevelopmentProject/testhandler/?input=thisismyinput
目立たないことに、入力をわかりやすい接頭辞「Your Input Was:」を付けたテキストとして返すだけです。
私は、次の行に沿って URI をさらに滑らかにすることができるという印象を受けました。
http: //localhost/DevelopmentProject/testhandler/thisismyinput
同じ結果が得られますが、厄介な「?input =」を取り除く方法がわかりません
私のweb.configのhttphandlersセクションへのエントリは次のとおりです(コードが表示されるようにスペースが追加されています):
< add verb="*" path="testhandler/*" type="HandlerLib.testhandler, HandlerLib"/ >
ローカル マシンで IIS 5.1 を実行していますが、問題は発生しますか?
本質的にどこが間違っているのですか?
ありがとう。
asp.net - 別のサーバーからダウンロードファイルを取得するHTTPHandler?
ダウンロード可能なファイルをウェブサイトのユーザーに提供したいのですが、ファイルの URL をユーザーから隠したいのです... HTTPHandler でうまくいくと思いますが、外部サーバーからファイルを取得して、ユーザーにストリーミングしますか?
おそらく、誰かがこれを達成する方法のヒントを教えてくれたり、以前にそれが行われたリソースを教えてくれませんか?
私が達成しようとしていることを詳しく説明するために...音楽ダウンロードリンクを含むASP.NET Webサイトを構築しています。ファイルの実際の URL を保護したいし、それらを外部 (PHP) サーバーに保存したい (はるかに安い)...
したがって、私がする必要があるのは、URL からファイルを取得できる (別のサーバーを指す) ストリームをセットアップし、それが別のサーバーからのものであることをユーザーが認識せずに Response オブジェクトにストリーミングすることです。
TransmitFile メソッドを使用すると、完全に別のサーバーからファイルをストリーミングできますか? ファイルがサーバーを介してストリーミングされるのは望ましくありません。これは目的に反するためです(帯域幅を節約する)...クライアント(ブラウザ)に他のサーバーから直接ファイルをダウンロードさせたいのです。
おそらくファイルホスティングサーバーにハンドラーが必要ですか? たぶん、反対側のPHPスクリプトが行く方法です...?
asp.net - ASP.NETHTTPハンドラーとグローバル変数
HTTPハンドラーを作成しました。
global.asaxのASP.netWebページでできるように、これらのハンドラーのグローバル変数を作成するにはどうすればよいですか?
c# - Graphics.DrawImageを使用するときに、Httpハンドラーからの画像の透明度を維持するにはどうすればよいですか?
その場でトリミングする必要のある一連のGIFがあります。C#でHTTPハンドラーを使用しているので、コードをより適切にカプセル化できます。結果のキャッシュを提供するなどです。
Image
現在、オブジェクトを介して既存の画像を新しい画像に描画すると、Graphics
すべての透明度が失われます。
透明性を維持するためにさまざまなテクニックを試しましたが、役に立ちませんでした。
私が試したこと:
MakeTransparent (Color)
メソッド呼び出しの使用- と
ImageAttriutes
の組み合わせで使用するColorMap
SetColorKey
安全でない演算子やWin32呼び出しを使い始めたくありません。
何か案は?
asp.net - .net http ハンドラーは rtmp および flex にリダイレクトします
IDに基づいて画像、swf、またはflvを表示するために使用する(http handler
)があります。.ashx
したがって、たとえばhttp://www.example.com/myHandler.ashx?id=1234は、ID 1234 の画像を表示します。これを、画像タグまたは swf ローダーまたはフレックスのビデオ表示のソースとして使用しています。私のハンドラーでは、アイテムがビデオの場合、要求をプログレッシブ ダウンロード ビデオ ( flv
) の http アドレスにリダイレクトするだけです。それはうまくいきます。しかし、rtmp プロトコルを使用してストリーミング サーバーにリクエストをリダイレクトしたい場合、それは何もしません。何かご意見は?httpアドレス以外にリダイレクトすることさえ可能ですか?
またweborb
、rtmp トンネリングが利用できるように見えるドット ネットも利用できます。そのようにリクエストを設定することは可能ですか?