2017-07-18 32 views
3

SoapUI 5.3を使用すると、要求エディタ(Webサービス)を使用して要求を正常に送信できます。 Excel VBAを使用してファイルを送信しようとしていますが、これが正しく完了したかどうかを判断できません。VBAを使用してSoap XMLを送信する

私は以下のVBAコードを使用していますが、XMLの経験は1日しかありません。私は問題がプロローグまたはヘッダーにあるかもしれないと思いますが、SoapUIの要求にヘッダーがないので、これが何であるべきかわかりません。私はMicrosoft XML 6.0への参照を設定しました。

Sub SendXMLtoSAA() 
    Dim myHTTP As New MSXML2.XMLHTTP60 
    Dim myDom As New MSXML2.DOMDocument60 
    Dim myXML As String 

    ''myDom.LoadXML (myXML) 
    myDom.Load "C:\Users\me\Desktop\test.xml" 
    myHTTP.Open "post", myServer, False 

    myHTTP.send (myDom.XML) 
    MsgBox myHTTP.responseText  
End Sub 

私は、XMLコードの先頭に<?xml version='1.0' encoding='UTF-8'?>を追加しましたが、関係なく、フィールドであるかの値、私は同じresponsetextを取得していないし、それが適切に「投稿」されている場合は、値が許容されるかどうかを知りません。私は他の価値を見なければならないでしょうか?

EDITmyHTTP.responseTextは、元のWebサービスXMLを表示しているようです。

RE-Edit:これは、サーバーリンクからwsdlを削除しなかったためです。

私が下に投稿した他のコードは不完全であり、不必要であることが判明しました。他のコードが混乱しないように削除しました。

私のためにこれを見たすべての人に感謝します。

+1

何らかの種類(Wiresharkなど)のスニッファをインストールし、SoapUIとExcelから送信しているものを調べることをお勧めします。 – Sam

答えて

2

私はXMLに関する経験がなく、間違っていただけでそれを証明すると言いました。サーバーの場合

、私はそれが...ls.php?wsdl&testで終わる持っていたが、私はそれからWSDLを取り出して、ちょうど...ls.php?test

他の争点はmyHTTPための変数の型だった持っていたはずです。 私はこれをMSXML2.XMLHTTP60としていましたが、これはクッキーのセキュリティ手段としての応答を妨げると信じています。 WinHttp.WinHttpRequestに改正した後、それはそのトリックのように見えます。

+0

レベル1の経験が得られました! – Namphibian

関連する問題