如何在Spyne srpc方法中访问SOAP头?

如何在Spyne srpc方法中访问SOAP头?,soap,spyne,Soap,Spyne,原谅我,如果我只是厚,但似乎有点薄,链接到示例代码是断开的。我想我找到了示例代码,但它似乎只访问侦听器回调函数中的头。如果可能,我需要通过srpc方法访问它 我想做的是这样的事情(这不起作用): 如果有帮助的话,我正在尝试替换一个用.NET编写的服务,该服务只在消息协定中定义消息头,如下所示: [MessageContract] public class MyRequest { [MessageHeader] public Guid TrackingID { get; set; }

原谅我,如果我只是厚,但似乎有点薄,链接到示例代码是断开的。我想我找到了示例代码,但它似乎只访问侦听器回调函数中的头。如果可能,我需要通过srpc方法访问它

我想做的是这样的事情(这不起作用):

如果有帮助的话,我正在尝试替换一个用.NET编写的服务,该服务只在消息协定中定义消息头,如下所示:

[MessageContract]
public class MyRequest
{
  [MessageHeader]
  public Guid TrackingID { get; set; }

  [MessageBodyMember]
  public String[] Messages { get; set; }
}

无法从srpc函数中读取标题数据@srpc适用于您不想触摸的现有功能。除非您知道需要@srpc,否则应始终使用@rpc

使用@rpc装饰您的函数。这会将rpc上下文(通常称为ctx)作为第一个参数传递给函数。然后,在ctx.in_header中可以找到头数据。您还可以设置ctx.out_头来更改传出响应头


此外,对我来说,获取文档的请求是纯金的:)

我会尝试一下。我只使用了@srpc,因为这在入门示例中,我只是从那里扩展。对于python来说,这似乎是目前最好的web服务库,如果我打算使用它,我将尽可能地为文档提供帮助。
[MessageContract]
public class MyRequest
{
  [MessageHeader]
  public Guid TrackingID { get; set; }

  [MessageBodyMember]
  public String[] Messages { get; set; }
}