3

外部決済サービスへの呼び出しからこのエラーが発生しています。このエラーは、Azure にデプロイした場合にのみ発生し、ローカルで完全に機能します。

「ゲートウェイまたはプロキシ サーバーとして機能しているときに Web サーバーが無効な応答を受け取りました。お探しのページに問題があり、表示できません。Web サーバーが (ゲートウェイまたはプロキシ サーバーとして機能しているときに) アップストリームに接続したとき」コンテンツ サーバーから無効な応答を受け取りました。」

支払いサービス クラスは、この wdsl で生成されます

https://pal-test.adyen.com/pal/Payment.wsdl

Payment クラスの authorize メソッドでエラーが発生したようですが、すべてのログ オプションがオンになっている場合でも、Azure で有用なものをログに記録できません。

他の誰かがこの問題を抱えていますか?

アップデート

問題を少し絞り込みました。以下のコントローラーのテスト方法では、Azure Web サイトが 502 でクラッシュし、再起動します。

public class TestController : Controller
{      
    public string test()
    {
        try
        {
            var webClient = new WebClient();
            var stream = webClient.OpenRead("https://pal-test.adyen.com/pal/servlet/soap/Payment");
            var streamReader = new StreamReader(stream);
            return streamReader.ReadToEnd();

        }
        catch (Exception exp)
        {
            errorResult(exp);
        }
        return formattedResult(result);
    }    
}

MS は、Azure Web サイトの HTTP プロトコルの一部を削除したようです。具体的には、SEC_I_RENEGOTIATE のようにブロックされています。

回避策はありますか?この方法が Web ロールで機能するかどうかは誰にもわかりませんか?

4

3 に答える 3

0

使用中のプロキシサーバーに問題がある可能性があります...次のことを試してください

UseDefaultWebProxy=false

マシン固有のプロキシ設定を使用してアプリを停止し、代わりにユーザー定義/ web.config 設定を使用します。

JcFX が上でコメントしたように、使用している URL が正しくありません!...

https://pal-test.adyen.com/pal/servlet/soap/Payment

つまり、pal-test にハイフンがありません

于 2012-08-24T11:12:08.930 に答える
0

そのURLに行くとHTTP認証を使いたいようですが、設定できるテストシステムのパスワードは取得できましたか?

webClient.Credentials = new NetworkCredential("username", "password");
于 2012-09-02T05:14:04.227 に答える
0

ひょっとして、.pfx 証明書ファイルなどを使用していませんか?

その場合、それを参照する方法が Azure で問題になる可能性があります。証明書をファイル システムに置くのではなく、Azure CertificateStore を使用することを検討してください (現在これを行っている場合)。

詳細については: https://msdn.microsoft.com/en-us/library/azure/gg465712.aspx

も関連します:

https://azure.microsoft.com/blog/2014/10/27/using-certificates-in-azure-websites-applications/

お役に立てれば!頑張ってください、この問題は私にとって本当に悪夢でした!

于 2015-08-03T15:12:17.130 に答える