SOAP запросов в R - PullRequest
       16

SOAP запросов в R

1 голос
/ 07 января 2020

Я смог выполнить этот запрос с использованием SOAPUI 5.5.0 без каких-либо проблем.

Когда я пытался заново создать запрос в R, я сталкиваюсь с ошибкой Unknown SSL protocol error in connection to service.bloomberg.com:443 .

У кого-нибудь есть мысли о том, что я делаю неправильно в R? Также я могу предоставить любую информацию, необходимую от SOAPUI.

headerfields <- c("Accept-Encoding" = "gzip,deflate", 
                  "Content-Type" = "text/xml;charset=UTF-8", 
                  "SOAPAction" = '"submitGetDataRequest"', 
                  "Host" = "dlws.bloomberg.com", 
                  "Connection" = "Keep-Alive", 
                  "User-Agent" = "Apache-HttpClient/4.1.1 (java 1.5)")

body <- '<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
   <soap:Body>
      <submitGetDataRequest xmlns="http://services.bloomberg.com/datalicense/dlws/ps/20071001" xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
         <headers>
            <closingvalues>true</closingvalues>
            <derived>true</derived>
            <secmaster>true</secmaster>
            <programflag>adhoc</programflag>
         </headers>
         <fields>
            <field>ID_BB_UNIQUE</field>
            <field>PX_LAST</field>
            <field>DVD_RECORD_DT</field>
         </fields>
         <instruments>
            <instrument>
               <id>EQ0086119600001000</id>
               <type>BB_UNIQUE</type>
            </instrument>
            <instrument>
               <id>IBM</id>
               <yellowkey>Equity</yellowkey>
               <type>TICKER</type>
            </instrument>
            <instrument>
               <id>GB0003252318</id>
               <type>ISIN</type>
            </instrument>
         </instruments>
      </submitGetDataRequest>
   </soap:Body>
</soap:Envelope>'

reader <- RCurl::basicTextGatherer()
RCurl::curlPerform(url = "https://service.bloomberg.com/assets/dl/dlws.wsdl", httpheader = headerfields, postfields = body, writefunction = reader$update)
xml <- reader$value()
...