質問

私は、セキュアなWebサービスを訪問する必要があります、 トークンを運ぶために、ヘッダーを必要としているすべてのリクエストます。

私は、Webサービスへのエンドポイントを知っています、 私はまた、トークンを作成する方法を知っています。

しかし、私は、WebサービスのWSDLを見ることができません。

の方法は、WSDLファイルなしで、SOAPクライアントを作成するには、C#であります。

役に立ちましたか?

解決

私はは、HttpWebRequestクラスを使用して、このコードを、確認しましたに、著作ます:

// Takes an input of the SOAP service URL (url) and the XML to be sent to the
// service (xml).  
public void PostXml(string url, string xml) 
{
    byte[] bytes = Encoding.UTF8.GetBytes(xml);
    HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
    request.Method = "POST";
    request.ContentLength = bytes.Length;
    request.ContentType = "text/xml";

    using (Stream requestStream = request.GetRequestStream())
    {
       requestStream.Write(bytes, 0, bytes.Length);
    }

    using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
    {
        if (response.StatusCode != HttpStatusCode.OK)
        {
            string message = String.Format("POST failed with HTTP {0}", 
                                           response.StatusCode);
            throw new ApplicationException(message);
        }
    }
}

あなたは適切なSOAPエンベロープを作成し、「XML」変数としてのそれを渡す必要があります。これは、いくつかの読書を取ります。私は、この SOAPチュートリアルが有用であることがしました。

他のヒント

SOAPクライアントは、単にそれでより多くのものを持つHTTPクライアントです。 のHttpWebRequestクラスを参照してください。あなたは、おそらくXMLシリアル化を使用して、独自のSOAPメッセージを作成する必要があります。

あなたはWSDLを持っているし、その...長い道のりの種類からクライアントを生成するために、それを公開し、独自のサービスを作成することができます。

あなたは電子メールであなたにWSDLとXSDファイル(複数可)を送信するために、Webサービスの開発を求めることができますか?その場合は、フォルダ内のファイルをダンプし、ハードディスク上のWSDLを使用してサービス参照を追加することができます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top