SOAP和持久性

时间:2017-04-15 08:16:55

标签: python web-services cookies soap

我正在编写自动交易机器人,使用python和suds soap客户端。

我想知道是否可以通过使用持久性SOAP调用来提高速度。(就像在RESTful服务中使用Session一样)。

这是我的要求:

***0xf7788430 in __kernel_vsyscall ()
Missing separate debuginfos, use: debuginfo-install glibc-2.17-105.i686 libgcc-4.8.3-10.i686
(gdb) quit
A debugging session is active.
    Inferior 1 [process 834] will be detached.
Quit anyway? (y or n) [answered Y; input not from terminal]***

我得到的回应是:

DEBUG:suds.client:sending to (http://api.betdaq.com/v2.0/ReadOnlyService.asmx)
message:
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:ns0="http://www.GlobalBettingExchange.com/ExternalAPI/" xmlns:ns1="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:None="http://www.GlobalBettingExchange.com/ExternalAPI/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
   <SOAP-ENV:Header>
      <ns0:ExternalApiHeader xmlns="http://www.GlobalBettingExchange.com/ExternalAPI/" version="2" languageCode="en" username="****" password="****" applicationIdentifier="***"/>
   </SOAP-ENV:Header>
   <ns1:Body>
      <ns0:GetPrices>
         <getPricesRequest xmlns="http://www.GlobalBettingExchange.com/ExternalAPI/" NumberForPricesRequired="1" NumberAgainstPricesRequired="1">
            <MarketIds>9430420</MarketIds>
         </getPricesRequest>
      </ns0:GetPrices>
   </ns1:Body>
</SOAP-ENV:Envelope>

正如您所看到的,我在每个xml请求中都使用标头作为我的用户名和密码。但是当我得到回复时,标题中没有cookie。

我想知道是否有可能以某种方式将cookie插入我的请求或类似的东西以实现持久性。 (就像在RESTful服务中使用Session一样)

1 个答案:

答案 0 :(得分:0)

没有。你受服务器响应的支配 - 据我所知,它不会返回任何cookie。

存在一个用于spreeding up HTTP auth的角落案例,允许抢先发送凭据,但不适用。

确保重用HTTPS连接。