問題タブ [wshttpbinding]
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 - IISホストWCFサービスはhttpsエンドポイントを受け入れず、404リソースエラーを受け取ります
すべての努力にもかかわらず、SSLを使用してIISでホストされている単純なWCFサービスを取得できませんでした。
IIS6.0でWindowsServer2k3を使用しており、サーバーに最大.NET 4.0がインストールされています(Webサイトは4.0用に構成されています)
http //.../ rptService.svc urlにアクセスすると、コードブロックと?wsdlurlを含む.svcページが表示されます。
一方、https //... / rptService.svcにアクセスすると、「リソースが見つかりません」という404エラーが発生します。(URLのコロンはスパム防止のために削除されます)
Webサイトでは、有効なSSL証明書が有効になっています。
私の関連するweb.configファイルは次のとおりです。
私は、同様の状況で150の異なるブログ/ Web投稿からweb.configファイルを書き込むために約100の異なる方法を試しましたが、これまでのところ何も機能していません。
私の最終目標は、このwcfサービスをホストして、カスタムユーザー名バリデーターを使用してユーザー名/パスワードトークンを受け入れることですが、現在、SSLで機能させることさえできません。
アプリケーションはVS2010で構築されています。
他にご不明な点がございましたら、お気軽にお問い合わせください。
どんな助けでも大歓迎です!
wcf - WCF クライアントのコードでメッセージ バージョンを設定する
WSHttpBinding のメッセージ バージョンを EnvelopeVersion.Soap11 に設定したい。私はそれを行う方法がわかりません。誰でも私を助けることができますか?ここに私のバインディングコードがあります
編集:これを行うコードは次のとおりです
.net - WCF、wsHttpBinding および wsp:policy
.NET 4.0、WCF、および wshttp バインディングを使用して、いくつかの ws メソッドを作成しています。wsHttp バインディングを使用する理由は、認証、暗号化、署名のサポートが必要だからです。
このようなサービスを作成して wsdl を調べると、そこに wsp:policy タグがあることがわかります。何らかの方法で WCF 構成に影響を与え、このタグを削除する方法はありますか?
私が理解しているように、このタグなしで暗号化と署名を行うことは可能です。
wcf - WCF: メッセージを処理できませんでした:
IIS7 のサイトでアプリケーションとしてホストしている WCF サービスを作成しました。あるサーバーで実行されており、現在、2 番目のサーバーで実行しようとしています。サービスを呼び出すと、次のエラーが発生します。
メッセージを処理できませんでした。これは、アクション \u0027http://tempuri.org/IMyService/myMethod\u0027 が正しくないか、メッセージに無効または期限切れのセキュリティ コンテキスト トークンが含まれているか、バインディング間に不一致があるためである可能性があります。
wsHttpBindingのセキュリティをNoneに設定したので、私の単純な考えでは、これはセキュリティ上の問題ではないと結論付けています。
何が間違っている可能性があり、正確な問題を特定するにはどうすればよいですか?
php - PHP から SOAP wsHttpBinding を使用する
Web サービスのみを提供するサーバーがwsHttpBinding
あり、それを PHP から使用する必要があります。標準の SoapClient では動作せず、次のエラーが発生します。
http://www.w3.org/2005/08/addressing/faults:Sendera:ActionMismatchメッセージで指定された SOAP アクション '' は、HTTP SOAP アクション ' http://tempuri.org/ICategoryApiと一致しません/ツリー'。a:アクション
をサポートする PHP SoapClient の実装または設定はありますwsHttpBinding
か?
wcf - 基本に変換された Wshttpbinding
2 つのプロジェクトで構成された WCF サービスがあります。
- WCF サービス ライブラリ
- WCF Web アプリケーション
最初のプロジェクトには、MyService によって実装されたサービス呼び出し IMyService があります。これは WS バインディングを使用して構成されており、このプロジェクトで F5 キーを押すと、WCFTestClient が WS バインディングをレンダリングします。Web アプリには、同じ名前のこのマークアップを含む .svc ファイルがあります
このプロジェクトで F5 キーを押すと、BasicHttpBinding がレンダリングされます。クライアントでも同じ。なんで?
wcf - IISでホストされているWCFでスキームHTTPSエラーに一致するベースアドレスが見つかりませんでした
https経由でWCFサービスを使用するようにほぼすべてを設定しています。IISアプリケーションが稼働しているので、ローカルホストでsvcとwsdlを読み取ることができます。そこで、Visual Studioに戻って、サービスを呼び出すことができるクライアントを作成しようとしました。ServiceReferenceを追加すると、次のエラーが発生します。
バインディングMetadataExchangeHttpsBindingを持つエンドポイントのスキームhttpsに一致するベースアドレスが見つかりませんでした。登録されているベースアドレススキームは[http]です。
組み込みの開発サーバーとIISExpressを試してみました。どちらも同じエラーを出しました。
これが私のweb.configです。
私は何が間違っているのですか?
.net - WCFのスロットリングと接続の制限
私はインターネットを閲覧し、答えを求めてスタックオーバーフローしましたが、私の問題に対する明確な答えを得ることができないようです。
全国に約50のクライアントがあり、Windowsサービスを介してサーバーへのWCF WSHTTPBinding呼び出しを10〜20分ごとに定期的に自動的に開きます。これは、サーバーを介して接続して長時間実行する操作を実行できるクライアントの数を制限しているため、うまく機能します。クライアントは、何もできないことを認識し、次にチェックインするときに試行します。
これは、同じルーターの背後に7つの別々のシステムがある1つのクライアントで、非常に遅いインターネットの問題が発生し始めた昨日まで、うまく機能していました。したがって、これらの7つのシステムは、10〜20分ごとにサーバーへの接続を開き、「チェックイン」手順を実行します。呼び出しにはしばらく時間がかかり、サーバーへの最大7つの接続を使用して、各システムを一度にサービスに接続できます。他の43のシステムも、10〜20分ごとに「チェックイン」する必要があります。しかし、7つのシステムを持つクライアントのインターネットが遅いため、サービスで長時間実行されているプロセスへの呼び出しに通常よりも時間がかかり、最終的にクライアントでタイムアウトになりました(セキュリティタイムスタンプエラーが古くなることもありました)。
私のサービスはクライアントのインターネットの問題の影響を完全に受けないようにする必要があり、サービスは「チェックイン」を続ける他のクライアントにサービスを提供し続ける必要があります。
これで、サービス側にサービススロットリング動作を実装しました。
私はそこを読んでこの設定を見つけましたが、今のところ私のコードにはこれがありません:
私はこれを理解しようとしましたが、完全には理解していません。それで、今私の説明で、ここに私の質問があります:
- サービスまたはクライアント側でSystem.Net.ServicePointManager.DefaultConnectionLimitを設定しますか?
- どこに設定しますか?ServiceHostを開く前に?ServiceHostを作成する前に?
- WCFの接続制限と同時呼び出しについて変更する他の領域はありますか?(私の読書から、使用しているバインディングによっては、いくつかあるようです)
注:回答を投稿する場合は、コードを使用してください。バインディングに構成ファイルを使用せず、プログラムでバインディングを作成します。
ありがとうございました。
wcf - WCF: myservice.svc?wsdl は、WSDL ではなく、「サービスを作成しました」と表示しますか?
wsHttpBinding と mexHttpBinding を使用して WCF サービスを作成しました。IIS6 で http を実行すると、myservice.svc に通常の「サービスが作成されました」と表示されます。ページ。myservice.svc?wsdl は、WSDL を含む XML を示しています。
から に変更し、https を使用して同じサービスに到達しようとしています<security mode="None">
。<security mode="Transport">
myservice.svc には、「サービスを作成しました」と表示されます。ただし、myservice.svc?wsdl には「サービスを作成しました」も表示されます。
私は何を間違っていますか?
サービスは引き続き機能します (http を使用するときにクライアントを作成し、後で https に変更しました)。しかし、おそらく ?wsdl ページが壊れているため、VS は https を使用して新しいクライアントを生成できません。
wcf - SSLと証明書を使用しないWCF wsHttpBindingセキュリティ
WCF
インターネットを介して使用される安全なサービスが必要です。軽量なメソッドが少ないため、パフォーマンスは問題になりません (メッセージ サイズ)。ファイアウォールの問題のためにポート 80 (Web) を好むため、TCP
バインドは優先されません。またSSL
、私の場合はオプションではありません。
私がセキュリティで調査wsHttpBinding
したように、私のシナリオには最良の選択です。MessageLevel
サービスを構成し、クライアントがデータを正常に受信できるようにしました。サービスを調べてサービスをWcfTestClient.exe
呼び出すと、このツールで SOAP メッセージ XML を確認できます。リクエストとレスポンスは、暗号化されていないプレーン テキストです。
サービス側で証明書を使用し、クライアント側でユーザー名パスワードを使用する例がいくつかあります。両側でユーザー名/パスワード ベースのセキュリティが必要ですが、Web で例が見つかりません。
出来ますか ?(ある場合は、リンクを提供してください)
ありがとう