問題タブ [webhttpbinding]
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.
azure - WCF REST テンプレートを使用した Azure Service Bus の webHttpRelayBinding により、不要な aspNetCompatibilityEnabled エラーが発生する
WCF REST テンプレートを使用して Azure Service Bus の webHttpRelayBinding を使用していますが、サービス クラスが正しく装飾されていても、不要な aspNetCompatibilityEnabled エラーが発生します。
私の Web.Config:-
例外は:-
wcf - それをサポートするバインディングに対してのみWCFコールバックを持つ
webHttpBinding
エンドポイント(Javaクライアントの場合)とnetTcpBinding
エンドポイント(.NETクライアントの場合)を持つWCFサービスを作成しようとしています。
エンドポイントでは、netTcpBinding
イベントのアラートを受け取るためにコールバックを使用できるようにしたいのですが、これを構成しようとすると、サービスにwebHttpBinding
コールバックをサポートしないエンドポイントもあるため、WCFが文句を言います。
あるエンドポイントでコールバックを利用するが、別のエンドポイントでは利用しない方法はありますか?
ajax - gzip エンコーディングを使用すると、WCF サービスが誤った Content-Length を返す
フィルタリング テキスト ボックスとリスト ボックスを含む Web ページがあります。テキスト ボックスを変更すると、AJAX 要求がトリガーされ、リスト ボックスに入力する値の配列が返されます。
返されるデータのサイズによっては、これらの呼び出しが失敗することがあるという問題がありました。小さなサイズの返されたデータはエラーになり、大きなサイズのデータが返され、正常に処理されました。
この問題は、バージョン 4.2 以上の jQuery を使用している場合にのみ発生します。jQuery バージョン 4.2 を使用している場合、問題はありません。
呼び出しのコードは次のとおりです。
2 つの要素が返された場合のデバッグ コンソールの内容は次のとおりです。
しかし、1 つの要素が返された場合:
したがって、当然、「Unterminated String Constant」エラーが発生します。
私はフィドラーを使用していくつかの調査を行いました。
すべての応答 (成功したものも含む) で、fiddler はエラーを表示しました。
Fiddler は、セッション # n1でプロトコル違反を検出しました。
Content-Length の不一致: 応答ヘッダーはn2バイトを示しましたが、サーバーはn3バイトを送信しました。
応答ヘッダーが実際のサイズよりも大きいサイズを示している場合でも、結果はブラウザーによって解釈される可能性があります。
応答ヘッダーが実際のサイズより小さいサイズを示している場合、ブラウザーは結果を解釈できませんでした。
ここで行うべき明らかな仮定は、応答処理コードがContent-Length
ヘッダーを読み取り、長さで規定されている以上のデータを読み取らないということです。
私の調査の次のステップは、jQuery バージョン 1.6.1 (壊れる) とバージョン 1.4.2 (壊れない) の要求/応答ヘッダーを比較することです。
jQuery 1.6.1 リクエスト ヘッダー:
jQuery 1.6.1 応答ヘッダー
jQuery 1.4.1 を使用した場合のリクエスト ヘッダーは次のとおりです。Accept
ヘッダーが jQuery 1.6.1 の値とは異なることに注意してください。
そして、jQuery 4.1.1 への応答:
したがって、明らかな違いは、呼び出しが jQuery 1.6.1 経由で行われる場合、応答は gzip を使用して圧縮され、呼び出しが jQuery 1.4.2 経由で行われる場合、応答は圧縮されないことです。
これで、デフォルトのAcceptヘッダーをオーバーライドして、文字列が含まれないようにする 回避策を実行できます
"q=0.01"
。(私が見つけることができる最良の説明"q=0.01"
はhere ですが、サービスの実装がこれを、応答を圧縮するための要求として解釈している理由がわかりません。)
このすべての調査の後、残りの疑問は、応答が GZIP 圧縮されている場合に、コンテンツの長さヘッダーと実際のコンテンツの長さとの間に不一致があるのはなぜですか?
webHttpBinding で WCF サービスを使用しています。
wcf - WCFTestClient に WCF REST サービスが表示されない
プロトタイプ サービス用に 3 つのエンドポイントを正常に構成しました。エンドポイントは、basicHttpBinding、wsHttpBinding、および webHttpBinding です。現時点で唯一の不具合は、WCFTestClient にあります。それを自分のサービスに向けると、最初の 2 つがリストされますが、webHttpBinding はリストされません。ブラウザから REST エンドポイントをテストできますが、問題なく動作します。これが私の設定です:
WCFTestClient ツールで webHttpEndpoint が表示されない理由はありますか?
乾杯、ダニー。
wcf - 基本認証を使用した WCF SSL Rest ベースの Web サービス
SSLを使用して展開された単純なWCF RESTベースのサービス(もちろん開発)があります。基本認証で機能させようとしていますが、率直に言って、どこにも行きません。
IIS 6.0 REST ベース - webHttpBinding の使用
これが私のweb.configの外観です...関連する部分だけです:
IIS で WCF サービスの仮想ディレクトリの匿名認証をオフにし、基本認証をオンにしています。
https://localhost/ThisTestService/MyTestService.svcを使用してアクセスしようとすると、アクセスできません。「バインディング WebHttpBinding を持つエンドポイントのスキーム http に一致するベース アドレスが見つかりませんでした。登録されているベース アドレス スキームは [https] です。」.
私はたくさんグーグルで検索しましたが、これまでのところ、問題を理解して修正しようとする試みはすべて無駄でした. 匿名認証を使用する場合、問題はありませんが、基本認証を使用する必要があります。
どんな助けでも大歓迎です。ありがとう。
wcf - WCF - RESTful 認証 - 常に 400 または 401 HTTP 応答を取得する
フィドラーを使用して、TransportCredentialOnly(Basic) サービスへの RESTful 要求を生成しています。「Authorization: Basic」行を含めると、エラー 400 bad request が常に表示されます。それ以外の場合、省略した場合、予想される 401 が返されます。
通常、400 が表示されると、スタック トレースまたはデバッグに役立つ何らかの手がかりがありますが、この場合は何もありません。私はこれについて円を描いています。GUID + app_tracelog と app_tracelog は何も更新または明らかにしていないようで、私の service.config ファイルには
ほとんどのエラーでスタック トレースが生成されます。認証サブシステムが何らかの理由で動揺しているように見えますが、その理由はわかりません...
私のフィドラーのリクエストヘッダーには、Authorization: Basic [Base64 version of name;pass] が含まれているだけです。
お知らせ下さい!
wcf - RESTful サービス内での WCF Duplex サービスの使用
二重サービス (「ServiceDuplex」) への参照を持つ WCF WebHTTP サービス (「ServiceREST」) を作成したいとします。ServiceDuplex では、要求されたデータを配信するために、特定のコールバック メンバーの実装が必要です。たとえば、ServiceDuplex で GetCustomers を呼び出すと、コールバック「ReceiveCustomers」を介してクライアントに顧客を返すサービスのメソッドがトリガーされます。
そうは言っても、ServiceREST で "GetSingleCustomer" メソッドが必要だとします。(起動後にキャッシュするのではなく) すべてのデータがオンデマンドで取得されると仮定すると、最初に ServiceDuplex から "GetCustomers" を呼び出し、実装したコールバック内でコレクションが満たされるのを待ってから、単一の顧客を検索する必要があります。私は欲しい。
webHttp はクライアントへのコールバックをサポートしていないため、デュプレックスのコールバックがコレクションを満たすまで、GET (GetSingleCustomer) 呼び出し内で AutoResetEvent のようなものを使用する必要があります。
私がやろうとしていることの「ベストプラクティス」はありますか、それとも私がやろうとしていることは間違っているので、そのようなプラクティスは作成されていませんか?!
助けてくれてありがとう。
.net - カスタム WebHttpBehavior を追加できません: 同じキーを持つ 2 つの項目を追加できません
最初に少し背景を説明します。WebHttpEndpoint を使用する WCF 4 の REST サービスがあります。すべてのサービス メソッド、またはすべてのサービス クラスに明示的なエラー ハンドラーを配置するのではなく、ログを記録し、適切なカスタム メッセージをラップしてクライアントに渡すことができる、一元化されたエラー処理が必要です。
IErrorHandler を実装し、それを顧客の WebHttpBehavior に追加することで、これを実行しようとしています。
次に、ExtensionElement を使用してそれを追加します。
エラー処理へのアプローチ全体が悪い考えのように思われる場合は、お気軽にコメントしてください...
ただし、私の質問は、サービスを開始しようとしたときにこの例外が発生する理由です。
webHttp または errorHandler の動作は単独で存在できるようですが、共存することはありません。
wcf - basicHttpBinding、webHttpBinding、およびmexHttpBindingエンドポイントを1つのWCFサービスに共存させるにはどうすればよいですか
WCFサービス(ターゲット.NET 4)があり、SOAP、POX、JSON、MEXの4つのエンドポイントを公開する必要があります。
私の構成ファイルは次のようになります。
また、サービスを実行すると、WCFテストクライアントが返す-オブジェクト参照がオブジェクトのインスタンスに設定されていないオブジェクト参照とスタックトレースを含むサービスメッセージを追加できませんでした。System.NullReferenceException
ただし、JSONおよびPOXエンドポイントはアクセス可能であり、正常に機能します。一方、構成からコメントアウトすると、WCFテストクライアントはSOAPサービスを適切に表示します。
現時点では、サービスに実装されている単純なメソッドは1つだけです。
poxエンドポイントとjsonエンドポイントを追加してmexエンドポイントにブレーキをかけるのはなぜですか?
wcf - WCFのwebhttpbindingでWindows認証を使用してパスワードを取得する方法はありますか?
現在、セルフホストのWCFRESTサービスを使用しています。WebHttpBindingとWindows認証を使用して、パスワードを取得することは可能ですか、それとも基本認証を使用する必要がありますか?